2009-11-20 55 views
-2

我開發了一個網頁,我需要將值域和文本域添加到列表框項目 我試過下面的代碼,但它不工作,請幫我解決問題。 預先感謝將值域和文本框分配到列表框

string[] category = new string[100]; 
      char[] delimeter = { '~' }; 
      category = Convert.ToString(dtable.Rows[0].ItemArray[5]).Split(delimeter); 

      for (int h = 0; h < category.Length; h++) 
      { 
       ListItem lstitem = lstCategory.Items.FindByText(category[h]); 
       if (lstitem != null) 
       { 
        lstSelCategory.DataTextField = category[h]; 
        lstSelCategory.DataValueField = lstitem.Value; 
       } 
      } 
      lstSelCategory.DataBind(); 
     } 
+0

你需要定義「不工作」。 – ChrisF 2009-11-20 13:42:13

+0

在附註中,當你只是將變量重新分配給可以是字符串[任何東西]的東西時,爲什麼要將類別聲明爲字符串[100]? – GenericTypeTea 2009-11-20 13:51:32

+0

只是爲了測試目的,我給100,對不便 – Sakthivel 2009-11-20 14:00:18

回答

1

DataValueFieldDataTextField是用於顯示哪些特性和用作用於分配DataSource,而不是爲將項目添加到列表中的值分配。

編輯: 在我看來,就好像你正在通過一些類別從DataTable循環,在另一個ListBox找到匹配的項目,然後嘗試將項目添加到另一個ListBox ......你應該使用ListBox的Add方法(如果這是控件的內容)。

lstSelCategory.Items.Add(new ListItem(category[h], lisitem.Value)); 
0

ListBox.DataTextFieldListBox.DataValueField在一起選擇使用具有ListBox.DataSource

查看this瞭解更多信息。