2009-11-20 36 views
0

我的存儲過程返回1或0,具體取決於另一個字段的值,但是,我創建的gridview中的checkboxfield顯示從存儲過程返回的數據,正在崩潰,說設置爲checkboxfield的值是一個字符串,而不是布爾值。我如何將字段返回爲1或0並將其轉換爲布爾值,以便我的複選框可以綁定到此值以檢查/取消選中?幫助與asp.net gridview/checkboxfield綁定

回答

0

我相信你想這樣的事情 - 這個工程的一個DataGrid:

<asp:CheckBox ... 
    Checked='<%# Convert.ToBoolean(DataBinder.Eval(Container.DataItem, "is_checked"))%>' 
/> 
0

與在DataGrid的複選框,創建一個模板領域。

// In your aspx page 
<asp:CheckBox ID="yourCheckBox" runat="server" OnDataBinding="yourCheckBox_DataBinding" /> 

// In your codebehind .cs file 
protected void yourCheckBox_DataBinding(object sender, System.EventArgs e) 
{ 
    CheckBox chk = (CheckBox)(sender); 
    chk.Checked = Convert.ToBoolean(Eval("YourFieldName")); 
} 
1

ASPX

<asp:TemplateField SortExpression="TragamonedaActiva" HeaderText="Trag. Activa"> 
    <ItemTemplate> 
     <asp:CheckBox ID="CK2" runat="server" EnableViewState="true" 
      Checked='<%# Convert.ToBoolean(Eval("TragamonedaActiva")) %>'/> 
    </ItemTemplate> 
</asp:TemplateField> 

的.cs

isChecked = ((CheckBox)gvReport.Rows[rowNo].FindControl("CK1")).Checked;