2012-08-02 218 views
4

我需要一個簡單的方法來綁定asp.net /C#中的複選框列表。綁定複選框列表

我從數據庫ID,名稱和IsActive拉3列。身份證和姓名我認爲將通過其名稱清楚。 IsActive將用於顯示已選中和未選中的框。我只想知道,可以在數據綁定時將子複選框值與IsActive綁定在一起嗎?

E.g.

cbxlFeatures.DataSource = dt; 
cbxlFeatures.DataValueField = "Id"; 
cbxlFeatures.DataTextField = "Name"; // something similar to this 
cbxlFeatures.SomePropert= "IsActive"; 
cbxlFeatures.DataBind(); 

我知道常規方式來遍歷項目和數據列,並比較和放置檢查。 我需要一些簡單的和最優化的方式...

感謝

+0

@humpty dumpty:感謝格式化 – 2012-08-02 10:04:31

回答

5

嘗試手動填充您的複選框列表,而不是我相信下面的代碼會爲你做的伎倆。

private void PopulateCheckBoxList(List<MyClass> myClassList) 
{ 
    foreach (MyClass m in myClassList) 
    { 
     ListItem item = new ListItem(m.Name, m.Id.ToString()); 
     item.Selected = m.IsActive; 
     cbxlFeatures.Items.Add(item); 
    } 
} 
1

不幸的是,我不覺得有什麼用的CheckBoxList的屬性這樣的一種方式。遍歷項目似乎可能是解決方案。