winforms - 错误 C2039 : 'Dispose' : is not a member of 'System::Windows::Forms::ErrorProvider'

标签 winforms visual-studio-2010 visual-c++ c++-cli errorprovider

我正在尝试使用 ErrorProvider 类在复选框上显示错误。我可以使用以下代码显示错误

errorProvider1->SetError(checkBox1,"Error");

但是当我尝试使用以下代码处理此 errorProvider 时

errorProvider1->Dispose();

然后这一行显示错误

error C2039: 'Dispose' : is not a member of 'System::Windows::Forms::ErrorProvider'

这段代码我可以在 vc# 中成功运行,但不能在 vc++ 中运行;

但是由于我的要求是在 vc++ 中使用它。

任何人都可以告诉我这段代码有什么问题吗?

提前致谢

最佳答案

根据this articleIDisposable 模式在 C++/CLI 中有所不同,您无法在该语言中实现或调用 Dispose() 方法。

您必须使用删除运算符:

errorProvider1->SetError(checkBox1,"Error");
delete errorProvider1;  // Equivalent to errorProvider1->Dispose().

关于winforms - 错误 C2039 : 'Dispose' : is not a member of 'System::Windows::Forms::ErrorProvider' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11432744/

相关文章:

c# - 为什么backgroundworker取消按钮没有取消backgroundworker操作?

c# - 使图片框透明,每个框与另一个角重叠?

asp.net - 如何在 Asp.net 中上传照片并保存其纵横比

C++ LNK1120 和 LNK2019 错误 : "unresolved external symbol WinMain@16"

c++ - 函数中不调用复制赋值

c++ - RegSetValueEx 和 CHAR

c# - 在 Winform 中引发一次 UserControl Load 事件

来自 typedef 的 C++ 模板错误

c# - 所有图像效果的颜色矩阵

c# - 如何将两个文本(.txt)文件合并为一个文件并区分相同的内容?