我设listbox可以多选,假设我选择了三项,并以字符串的形式"'test1','test2','test3'"插入的数据库,我在做修改功能时,我怎么再把这个字符串的值赋给listbox(也就是说让listbox里的test1、test2、test3 项的selected=true)

解决方案 »

  1.   

    for(int i=0; i<listbox.Items.Count; i++)
    {
        ListItem itemX = listbox.Items[i];
        if(itemX.value == "test1")
               itemX.Selected = true;
            
    }
      

  2.   

    非常感谢ztchen兄,由于我向数据库插入数据时是一个字符串 sting str="'test1','test2','test3'";我是不是还得用split函数先分割字符串呀?再接合你上面的循环应该怎么写?
      

  3.   

    string[] str = new string[] { "0","0","0"};
    for(int i=0; i<listbox.Items.Count; i++)
    {
        if(ListBox1.Items[i].Selected = true)
        {
               str[i]=ListBox1.Items[i].Text;
        }
                  .
                  .
                  .}
      

  4.   

    恩,可以的:// 以逗号拆分字符串
    string[] strList = value.Split(",".ToCharArray());// 遍历列表
    for(int i=0; i<listbox.Items.Count; i++)
    {
        ListItem itemX = listbox.Items[i];    // 遍历拆分后的字符串数组,查找对应项
        for(int j=0; j<=strList.GetUpperBound(0); j++)
        {
            if(itemX.value == strList[j])
            {
               itemX.Selected = true;
               break;
             }
         }
    }