有一个Hashtable ht,  一个 CheckBoxList1,Hashtable ht = new Hashtable();
ht.Add("aaa","1");
ht.Add("bbb","2");
ht.Add("ccc","3");
ht.Add("其它","4");请问如何在程序运行时
把 CheckBoxList1 的每个选项设置为 text="aaa" value="1" ....

解决方案 »

  1.   

    应该不能直接绑定,用Hashtable表循环增加吧。
      

  2.   

    private void BindHashtable(Hashtable ht,Control radiobuttonlist)
    {
    if(radiobuttonlist is RadioButtonList)
    {
    IDictionaryEnumerator et = ht.GetEnumerator();
    int i=0;
    // 作哈希表循环
    while ( et.MoveNext() )
    {
    ListItem lt=new ListItem(ht.Keys,ht.Values);
    ((RadioButtonList)radiobuttonlist).Items.Add(ht);
    } }
    }
      

  3.   

    请问如何写循环里面的内容绑定到CheckBoxList1
    for(int i=0;i<ht.Count;i++)
    {
      .......
    }
      

  4.   

    private void BindHashtable(Hashtable ht,Control ctrls)
    {
    if(ctrls is RadioButtonList)
    {
    IDictionaryEnumerator et = ht.GetEnumerator();

    // 作哈希表循环
    while ( et.MoveNext() )
    {
    ListItem lt=new ListItem(ht.Keys,ht.Values);
    ((RadioButtonList)radiobuttonlist).Items.Add(ht);
    } }
    if(ctrls is  CheckBoxList)
    {
    IDictionaryEnumerator et = ht.GetEnumerator();

    // 作哈希表循环
    while ( et.MoveNext() )
    {
    ListItem lt=new ListItem(ht.Keys,ht.Values);
    ((CheckBoxList)radiobuttonlist).Items.Add(ht);
    }
    }
    }
      

  5.   

    但是有个错误哦:
    “System.Web.UI.WebControls.ListItem.ListItem(string, string)”最匹配的重载方法具有一些无效参数