为什么这样做:
using namespace System;
using namespace System::Windows::Forms;
...
if( MessageBox::Show("Really do it?", "Are you sure?", System::Windows::Forms::MessageBoxButtons::YesNo) == System::Windows::Forms::DialogResult::Yes )
{
Console::WriteLine("Do it!");
}
..当失败时:
using namespace System;
using namespace System::Windows::Forms;
...
if( MessageBox::Show("Really do it?", "Are you sure?", System::Windows::Forms::MessageBoxButtons::YesNo) == DialogResult::Yes )
{
Console::WriteLine("Do it!");
}
...出现以下错误:
error C2039: 'Yes' : is not a member of 'System::Windows::Forms::Form::DialogResult'
我假设Visual Studio正在接收DialogResult,但我看不到它在哪里找到它?
答案 0 :(得分:3)
这是一个命名冲突,Form.DialogResult是Form的一个属性。 See here.我假设您的代码是表单的一部分,因此优先。
答案 1 :(得分:3)
System::Windows::Forms::Form
有一个名为DialogResult的属性(类型为System::Windows::Forms::DialogResult
),因此出错。
http://msdn.microsoft.com/library/system.windows.forms.form.dialogresult.aspx
http://msdn.microsoft.com/library/system.windows.forms.dialogresult.aspx