【问题标题】:combo box checked items to single string组合框选中项目到单个字符串
【发布时间】:2013-05-23 09:44:23
【问题描述】:

这是我的代码,

string _towns = String.Join(",", 
(usercontrol.FindControl("comboTown") as RadComboBox).CheckedItems);

'comboTown' 有值

Town1
Town2
Town3
Town4

如果我检查了 Town2Town3 ,我想得到用逗号分隔的单个字符串 like Town2,Town3 。但我的代码返回 Telerik.Web.UI.RadComboBoxItem,Telerik.Web.UI.RadComboBoxItem 。我怎样才能只获得检查项目的价值?

【问题讨论】:

    标签: c# asp.net string combobox telerik


    【解决方案1】:

    您必须访问 Text 的属性 RadComboBoxItem

    var selectedTowns = (usercontrol.FindControl("comboTown") as RadComboBox)
                                    .Items.Where(i => i.Checked)
                                    .Select(i => i.Text)
                                    .ToArray();
    
    string _towns = String.Join(",", selectedTowns);
    

    【讨论】:

    • 返回FitInInput
    • 问题出在其他地方,我的长期猜测是您在回发时重新绑定了控件,但可以确定您可以调试并查看comboTown 中有哪些项目?
    【解决方案2】:
    string _towns = String.Join(",",(usercontrol.FindControl("comboTown") as RadComboBox).Items
       .Where(i => i.Checked)
       .Select(i => i.Text).ToList());
    

    string _towns = String.Join(",",(usercontrol.FindControl("comboTown") as RadComboBox).CheckedItems).Select(i => i.Text).ToList());
    

    【讨论】:

    • 返回FitInInput
    【解决方案3】:
    StringBuilder str= new StringBuilder();
    //Register Combo Selected Index Changed Event
    Combo_OnSelectedIndexChange(abc,abc) {
    {
    str.append(ComboBox1.SelectedItem.Text+",");
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-31
      • 1970-01-01
      • 1970-01-01
      • 2021-04-12
      • 1970-01-01
      • 2014-11-28
      相关资源
      最近更新 更多