我有一個Telerik的radgrid控件與包含一個複選框GridTemplateColumn,如下:遍歷行/複選框在radgrid控件
<telerik:GridTemplateColumn HeaderText="MINE" UniqueName="MyTemplateColumn">
<ItemTemplate>
<asp:CheckBox id="MyCheckBox" runat="server"></asp:CheckBox>
</ItemTemplate>
</telerik:GridTemplateColumn>
我想設置框被「選中」的基礎上讀出的值來自數據庫。我可以處理ItemDataBound事件並在每行綁定時讀取數據庫,但這會導致n查找。相反,我想處理DataBound,然後一次設置所有的值。因此,在該方法中,我想這樣的代碼:
// read all values from database first, then...
foreach(var chkbox in MyRadGrid.MasterTableView.Columns.FindByUniqueName("MyTemplateColumn").FindControl("MyCheckBox")) {
chkbox.Checked = oneValue;
}
那是不行的,因爲FindControl已不是的GridColumn的方法,而且不會產生複選框可迭代列表。遍歷模板列中複選框的正確方法是什麼?謝謝!