【问题标题】:How do I check the checkbox programmatically in c# winform?如何在 c# winform 中以编程方式检查复选框?
【发布时间】:2017-08-14 20:55:08
【问题描述】:

我在我的 winform 中动态创建了复选框。现在我想更新这些复选框中的复选标记。我怎么做?我只有这个

复选框.名称

勾选复选框的属性。 我用过

foreach (CheckBox box in chboxes)
 box.Checked = true; 

其中 box 是 List 类型,并且动态创建的复选框已添加到 box。

chboxes.Add(chkbox);

问题: 未以编程方式检查复选框。那是我的问题。

CheckBox chkbox = new CheckBox();
 chkbox.Name = "priv1";
 panel.Controls.Add(chkbox);

【问题讨论】:

  • 当前代码出了什么问题?你期望什么?请更清楚和具体
  • “当前代码出了什么问题?”仍然没有答案....代码看起来不错。是复选框未选中的问题吗?他们根本不出现吗?你的狗吃掉了你所有的复选框吗?
  • @AparajitaSinha 我们无法推断您的条件要求,例如:除非您热衷于解释要求,否则您希望在什么基础上选中/取消选中复选框。
  • 它们是否出现在表单上?您是否有一些代码出现在以下行:this.Controls.Add(myCheckBox);
  • 请在您创建复选框并将它们添加到控件的位置发布整个代码。还是您在设计器中通过拖放将复选框添加到表单中?

标签: c# winforms checkbox


【解决方案1】:

所以您已经向 UI 添加了一些 CheckBox,您需要迭代它们并根据某些条件更改其选中属性。以下代码将帮助您做到这一点,让panel 成为您添加复选框的位置,然后代码将遍历该面板中所有 CheckBox 类型的控件并更改其状态:

foreach (CheckBox box in panel.Controls.OfType<CheckBox>())
{
    if(some condition here)
    {
        box.Checked = true; 
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-16
    • 1970-01-01
    • 2012-08-13
    • 2012-10-01
    • 2021-06-07
    • 1970-01-01
    • 2012-08-12
    • 2017-07-19
    相关资源
    最近更新 更多