c# - 将复选框添加到消息框时如何返回正确的枚举

标签 c# .net winforms

我创建了一个返回 DialogResult 的消息框。现在我在上面添加了复选框,想知道它是否被选中。那我应该返回什么?我认为的简单方法是创建新的枚举,它将具有 DialogResult 的所有值加上一个指示复选框状态的值

public enum MyDlgResult
{
    NONE = DialogResult.NONE, 
    OK = DialogResult.OK ........................, 
    CHKBOXCHECKED = 8
}

...并返回此枚举 MyDlgResult。 但这是正确的做法吗?因为每次向我的消息框添加新功能时,我都必须在此枚举中添加值。
如果有的话,更好的方法来做到这一点。 谢谢。

最佳答案

只需将属性添加到该消息框,它将成为 CheckBox 的 Checked 属性的代理,并在 OK 结果表单消息框上检查新属性。

要添加的属性

public bool Checked
{
   get { return yourCheckBox.Checked; }
}

最后的代码是这样的

MessBox box = new MessBox();
if(box.Show() == DialogResult.OK)
{
   bool isChecked = box.Checked;
}

关于c# - 将复选框添加到消息框时如何返回正确的枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10449879/

相关文章:

c# - StructureMap InstanceScope.Hybrid 和 IDisposable

c# - 文字和隐式缩小转换

c# - 在 Entity Framework 4 中填充外键对象

c# - 如何通过分组将 <Entities> 列表转换为一个字符串?

c# - 使用 c# 和 MySql 存储过程找出 Last_Insert_Id() (在数据访问层 MVC 中)

.net - 有谁知道这个 EntryPointNotFoundException - "Unable to find an entry point named ' nonexistent_dummy' in DLL 'MSVCR80.dll' 的含义?

c# - .NET 应用程序使用 PHP/MYSQL 进行身份验证?

c# - 使用 C# 从 C# 中退出类

asp.net - WinForms和ASP.NET自定义控件的通用代码

c# - 使用自定义字体在标签中绘制文本时参数无效