Form.DialogResult 属性
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置窗体的对话框结果。
public:
property System::Windows::Forms::DialogResult DialogResult { System::Windows::Forms::DialogResult get(); void set(System::Windows::Forms::DialogResult value); };
[System.ComponentModel.Browsable(false)]
public System.Windows.Forms.DialogResult DialogResult { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.DialogResult : System.Windows.Forms.DialogResult with get, set
Public Property DialogResult As DialogResult
DialogResult,表示当窗体用作对话框时该窗体的结果。
- 属性
指定值不在有效值范围内。
以下示例将窗体显示为对话框,并显示一个消息框,指示是通过引用 DialogResult 窗体的 属性来单击窗体的“确定”或“取消”按钮。
void CreateMyForm()
{
// Create a new instance of the form.
Form^ form1 = gcnew Form;
// Create two buttons to use as the accept and cancel buttons.
Button^ button1 = gcnew Button;
Button^ button2 = gcnew Button;
// Set the text of button1 to "OK".
button1->Text = "OK";
// Set the position of the button on the form.
button1->Location = Point(10,10);
// Set the text of button2 to "Cancel".
button2->Text = "Cancel";
// Set the position of the button based on the location of button1.
button2->Location = Point(button1->Left,button1->Height + button1->Top + 10);
// Make button1's dialog result OK.
button1->DialogResult = ::DialogResult::OK;
// Make button2's dialog result Cancel.
button2->DialogResult = ::DialogResult::Cancel;
// Set the caption bar text of the form.
form1->Text = "My Dialog Box";
// Define the border style of the form to a dialog box.
form1->FormBorderStyle = ::FormBorderStyle::FixedDialog;
// Set the accept button of the form to button1.
form1->AcceptButton = button1;
// Set the cancel button of the form to button2.
form1->CancelButton = button2;
// Set the start position of the form to the center of the screen.
form1->StartPosition = FormStartPosition::CenterScreen;
// Add button1 to the form.
form1->Controls->Add( button1 );
// Add button2 to the form.
form1->Controls->Add( button2 );
// Display the form as a modal dialog box.
form1->ShowDialog();
// Determine if the OK button was clicked on the dialog box.
if ( form1->DialogResult == ::DialogResult::OK )
{
// Display a message box indicating that the OK button was clicked.
MessageBox::Show( "The OK button on the form was clicked." );
// Optional: Call the Dispose method when you are finished with the dialog box.
delete form1;
}
else
{
// Display a message box indicating that the Cancel button was clicked.
MessageBox::Show( "The Cancel button on the form was clicked." );
// Optional: Call the Dispose method when you are finished with the dialog box.
delete form1;
}
}
public void CreateMyForm()
{
// Create a new instance of the form.
Form form1 = new Form();
// Create two buttons to use as the accept and cancel buttons.
Button button1 = new Button ();
Button button2 = new Button ();
// Set the text of button1 to "OK".
button1.Text = "OK";
// Set the position of the button on the form.
button1.Location = new Point (10, 10);
// Set the text of button2 to "Cancel".
button2.Text = "Cancel";
// Set the position of the button based on the location of button1.
button2.Location
= new Point (button1.Left, button1.Height + button1.Top + 10);
// Make button1's dialog result OK.
button1.DialogResult = DialogResult.OK;
// Make button2's dialog result Cancel.
button2.DialogResult = DialogResult.Cancel;
// Set the caption bar text of the form.
form1.Text = "My Dialog Box";
// Define the border style of the form to a dialog box.
form1.FormBorderStyle = FormBorderStyle.FixedDialog;
// Set the accept button of the form to button1.
form1.AcceptButton = button1;
// Set the cancel button of the form to button2.
form1.CancelButton = button2;
// Set the start position of the form to the center of the screen.
form1.StartPosition = FormStartPosition.CenterScreen;
// Add button1 to the form.
form1.Controls.Add(button1);
// Add button2 to the form.
form1.Controls.Add(button2);
// Display the form as a modal dialog box.
form1.ShowDialog();
// Determine if the OK button was clicked on the dialog box.
if (form1.DialogResult == DialogResult.OK)
{
// Display a message box indicating that the OK button was clicked.
MessageBox.Show("The OK button on the form was clicked.");
// Optional: Call the Dispose method when you are finished with the dialog box.
form1.Dispose();
}
else
{
// Display a message box indicating that the Cancel button was clicked.
MessageBox.Show("The Cancel button on the form was clicked.");
// Optional: Call the Dispose method when you are finished with the dialog box.
form1.Dispose();
}
}
Public Sub CreateMyForm()
' Create a new instance of the form.
Dim form1 As New Form()
' Create two buttons to use as the accept and cancel buttons.
Dim button1 As New Button()
Dim button2 As New Button()
' Set the text of button1 to "OK".
button1.Text = "OK"
' Set the position of the button on the form.
button1.Location = New Point(10, 10)
' Set the text of button2 to "Cancel".
button2.Text = "Cancel"
' Set the position of the button based on the location of button1.
button2.Location = New Point(button1.Left, button1.Height + button1.Top + 10)
' Make button1's dialog result OK.
button1.DialogResult = DialogResult.OK
' Make button2's dialog result Cancel.
button2.DialogResult = DialogResult.Cancel
' Set the caption bar text of the form.
form1.Text = "My Dialog Box"
' Define the border style of the form to a dialog box.
form1.FormBorderStyle = FormBorderStyle.FixedDialog
' Set the accept button of the form to button1.
form1.AcceptButton = button1
' Set the cancel button of the form to button2.
form1.CancelButton = button2
' Set the start position of the form to the center of the screen.
form1.StartPosition = FormStartPosition.CenterScreen
' Add button1 to the form.
form1.Controls.Add(button1)
' Add button2 to the form.
form1.Controls.Add(button2)
' Display the form as a modal dialog box.
form1.ShowDialog()
' Determine if the OK button was clicked on the dialog box.
If form1.DialogResult = DialogResult.OK Then
' Display a message box indicating that the OK button was clicked.
MessageBox.Show("The OK button on the form was clicked.")
' Optional: Call the Dispose method when you are finished with the dialog box.
form1.Dispose
' Display a message box indicating that the Cancel button was clicked.
Else
MessageBox.Show("The Cancel button on the form was clicked.")
' Optional: Call the Dispose method when you are finished with the dialog box.
form1.Dispose
End If
End Sub
窗体的对话结果是窗体显示为模式对话框时从窗体返回的值。 如果窗体显示为对话框,则使用枚举中的值 DialogResult 设置此属性将设置窗体的对话框结果的值,隐藏模式对话框,并将控件返回到调用窗体。 此属性通常由 DialogResult 窗体上控件的 Button 属性设置。 当用户单击控件时 Button ,分配给 DialogResult 的 属性 Button 的值将 DialogResult 分配给窗体的 属性。
当窗体显示为模式对话框时,单击“ 关闭 ”按钮 (窗体右上角带有 X 的按钮,) 导致隐藏窗体,并将 DialogResult 属性设置为 DialogResult.Cancel
。
Close当用户单击对话框的“关闭”按钮或设置 属性的值DialogResult时,不会自动调用 方法。 相反,窗体是隐藏的,无需创建新对话框实例即可再次显示。 由于此行为,当应用程序不再需要表单时,必须调用 Dispose 窗体的 方法。
可以使用此属性来确定对话框的关闭方式,以便正确处理在对话框中执行的操作。
备注
在用户单击“关闭”按钮时,可以通过在窗体事件的DialogResult事件处理程序中设置 DialogResult 属性来替代分配给 属性Closing的值。
备注
Form如果 显示为无模式窗口,则 属性返回DialogResult的值可能不会返回分配给窗体的值,因为窗体的资源会在窗体关闭时自动释放。
产品 | 版本 |
---|---|
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
Windows Desktop | 3.0, 3.1, 5, 6, 7, 8, 9, 10 |