我被这个困住了。我有一个gridview 和一个sqldatasource。我创建了一个带有链接按钮的页脚行,用于将记录添加到 MSSQL 数据库。
我可以插入除最后一个复选框之外的所有文件,即一个 BIT。这是我的事件处理程序:
protected void lnkInsert_Click(object sender, EventArgs e)
{
SqlDataSource1.InsertParameters["name"].DefaultValue =
((TextBox)GridView1.FooterRow.FindControl("txtName")).Text;
SqlDataSource1.InsertParameters["username"].DefaultValue =
((TextBox)GridView1.FooterRow.FindControl("txtUsername")).Text;
SqlDataSource1.InsertParameters["pass"].DefaultValue =
((TextBox)GridView1.FooterRow.FindControl("txtPass")).Text;
SqlDataSource1.InsertParameters["uread"].DefaultValue =
((TextBox)GridView1.FooterRow.FindControl("txtUread")).Text;
SqlDataSource1.InsertParameters["udownload"].DefaultValue =
((TextBox)GridView1.FooterRow.FindControl("txtUdownload")).Text;
SqlDataSource1.InsertParameters["udelete"].DefaultValue =
((TextBox)GridView1.FooterRow.FindControl("txtUdelete")).Text;
SqlDataSource1.InsertParameters["umail"].DefaultValue =
((TextBox)GridView1.FooterRow.FindControl("txtUmail")).Text;
SqlDataSource1.InsertParameters["is_admin"].DefaultValue =
((CheckBox)GridView1.FooterRow.FindControl("chkCredential")).Checked;
SqlDataSource1.Insert();
}
我尝试了有关复选框的不同版本的行,我什至尝试使用 Bool、Boolean 等,但我找不到让它工作的方法。我不断收到诸如“无法在字符串中转换 bool”之类的错误。我应该如何写这一行:
SqlDataSource1.InsertParameters["is_admin"].DefaultValue =
((CheckBox)GridView1.FooterRow.FindControl("chkCredential")).Checked;
象素
<asp:TemplateField HeaderText="Admin" SortExpression="is_admin">
<EditItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# Bind("is_admin") %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:CheckBox ID="chkCredential" runat="server" />
</FooterTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# Bind("is_admin") %>' Enabled="false" />
</ItemTemplate>
</asp:TemplateField>
让它工作?一些帮助将不胜感激。