【问题标题】:ASP.NET C# Connect Checkboxex with DatatableASP.NET C# 将 Checkboxex 与数据表连接
【发布时间】:2013-10-18 07:53:15
【问题描述】:

我只是在一个函数中,它从数据库中输出一个文件名列表。我也从数据库中获取它并将其存储到 DataTable 中。 DataTable 将列表提供给 DataGrid,后者将其显示在页面上。效果很好。

我的问题是我想在每个文件名旁边有一个右边的复选框,我可以勾选,下次保存表单时,数据库条目将被删除。

我怎样才能做到这一点,以便程序动态地将复选框显示到 DataTable 并且该复选框会知道它具有哪个条目?

最好的问候 迈克尔·赖特

【问题讨论】:

标签: c# asp.net checkbox datagrid datatable


【解决方案1】:
    <asp:TemplateField HeaderText="name" SortExpression="Name">

                        <ItemTemplate>
                        <asp:Checkbox id="chkIsDeletable" runat="server" />
<asp:HiddenField id="hndFileId" runat="server" Value='<%#Eval("FileID")%>' />
                        </ItemTemplate>
                        </asp:TemplateField>

    <asp:TemplateField HeaderText="name" SortExpression="Name">

                        <ItemTemplate>
                        <%#Eval("filename") %>
                        </ItemTemplate>
                        </asp:TemplateField>

现在按钮点击事件:

protected void Button_Click(object sender, EventArgs e)
    {

String SelectedFileIds ="";
        foreach (GridViewRow item in GridView1.Rows)
        {
            CheckBox chkIsDeletable = item.FindControl("chkIsDeletable") as CheckBox;
            HiddenField hndFileId = item.FindControl("hndFileId") as HiddenField;
            if (chkIsDeletable.Checked)
                SelectedFileIds = hndFileId.Value + ",";
        }
        SelectedFileIds = SelectedFileIds.TrimEnd(",");

}

现在您将拥有已勾选复选框的所有文件 ID,现在您可以从包含所选文件 ID 的数据库中删除这些记录。

希望对你有帮助!!!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-19
    • 2011-08-23
    • 1970-01-01
    • 1970-01-01
    • 2014-06-06
    • 1970-01-01
    • 2021-05-27
    相关资源
    最近更新 更多