【问题标题】:Programmatically Checking DevExpress CheckedComboBoxEdit Items以编程方式检查 DevExpress CheckedComboBoxEdit 项
【发布时间】:2012-06-09 18:18:13
【问题描述】:

我有一个 CheckedComboBoxEdit,它绑定到一个 TableAdapter,它用项目列表填充它。

我有一个单独的查询,它返回一个列出需要检查的项目的数据集。

我需要遍历 CheckedComboBoxEdit 项目以根据需要检查它们。

如何使 CheckedComboBoxEdit 反映查询中的数据,该查询返回需要检查的项目列表?

我在 Visual Studio 2010 中使用 C# 和 DevExpress 10.2.9。

对此问题的任何帮助将不胜感激,对此问题的任何其他解决方案也将非常好。

【问题讨论】:

  • 你知道复选框名称吗?或者它们是动态的?如果你知道他们,然后编写检查每个复选框的选中状态的方法,然后做一些事情..
  • @Anon :CheckedComboBox 项目名称是动态的。我有一个数据集,列出了 CheckedComboBox 中需要检查的所有项目。我不确定如何以及何时应用它。我应该使用哪个事件来做到这一点?
  • 什么是 CheckedComboBox?这是您制作的自定义控件吗?您说这些值存储在您的数据集中,那么为什么不遍历数据集以查找将复选框设置为选中的条件?
  • @banging :添加了一个问题。谢谢。

标签: c# winforms devexpress


【解决方案1】:

CheckedComboBoxEdit 的项目状态与其 EditValue 相关联。您可以通过设置适当的编辑器值来检查项目:用分隔符分隔的值列表(每个项目都有值和显示文本)。分隔符是通过 RepositoryItemCheckedComboBox.SeparatorChar 属性指定的。

【讨论】:

【解决方案2】:

这里是怎么做的

checkedComboBoxEdit1.Properties.SeparatorChar = ';';
// Set the edit value, assuming you have items named "one",and "two"
checkedComboBoxEdit1.SetEditValue("one; two");

Here 是完整的例子

【讨论】:

    【解决方案3】:

    短代码sn-p。

    string str = "first;second";
    string[] array = str.Split(';');
    char separator = checkedComboBoxEdit1.Properties.SeparatorChar;
    string result = string.Empty; 
    foreach (var element in array){
       result += element + separator;
    }
    
    checkedComboBoxEdit1.SetEditValue(result);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-10
      • 1970-01-01
      • 1970-01-01
      • 2016-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-20
      相关资源
      最近更新 更多