Analytics

2011年4月11日 星期一

[GridView]使用 TemplateField CheckBox繫結資料方式(Use TemplateField CheckBox tying Profile Information)


問題

使用 TemplateField CheckBox繫結資料方式



解決方法

當使用CheckBox當GridView裡的TempleteField時,可以使用以下方式繫結資料來源,注意的是只能是0跟1的整數值歐!!
CheckBox裡的Checked屬性加上一句就可以了.
<asp:GridView ID="GridView1" runat="server" />
 <asp:TemplateField HeaderText="啟用"> 
  <ItemTemplate> 
   <asp:CheckBox ID="cbLock" Enabled="True" Checked='<%# Bind("Lock") %>' runat="server" oncheckedchanged="cbLock_CheckedChanged" AutoPostBack="True" EnableViewState="False" /> 
  </ItemTemplate>
  <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
 </asp:TemplateField> 
</asp:GridView>

另外若要取得Checkbox的資料做判斷的話,方式如下:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
 if (e.Row.RowType == DataControlRowType.DataRow)
 {
  //取得目前的checkbox
  CheckBox cb = (CheckBox)e.Row.FindControl("cbLock");
  cb.Enable=false;//關閉控制項
 }
}

沒有留言:

熱門文章