C#中的自定义对话框?

Jac*_*ack 9 c# dialog winforms

我有一个按钮,当单击时,会打开一个对话框,其上有各种控件,如单选按钮和文本框.如果确定,则该对话框中的值将传递回按钮,其余代码将使用这些值进行处理.如果取消则不做任何事.

我怎样才能做到这一点?我正在考虑使用这些控件创建另一个表单,并让该按钮调用新表单,但我希望其余控件停止,直到表单像对话框一样完成.

小智 32

1.)使用所有必要的UI元素创建您正在讨论的表单.还要为其添加"确定"和"取消"按钮.

2.)在"确定"和"取消"按钮的属性窗格中,将DialogResult值分别设置为"确定"和"取消".此外,您还可以将Form的CancelButton属性设置为您创建的Cancel按钮的属性.

3.)向对话框添加与您要返回的值对应的其他属性.

4.)要显示对话框,请执行以下操作

using( MyDialog dialog = new MyDialog() )
{
   DialogResult result = dialog.ShowDialog();

   switch (result)
   {
    // put in how you want the various results to be handled
    // if ok, then something like var x = dialog.MyX;
   }

}
Run Code Online (Sandbox Code Playgroud)