c# - 启用复选框以在 ASP.NET GridView 上可编辑,而无需单击编辑
问题描述
我有一个 GridView,它有一列复选框,是否可以使复选框可编辑,而不必一直单击每一行上的编辑来编辑复选框。
设计图像 GridView
代码
<asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1" AutoGenerateColumns="False" DataKeyNames="ItemID" Height="210px" Width="785px">
<Columns>
<asp:CommandField ShowEditButton="True" />
<asp:CheckBoxField DataField="Checkedin" HeaderText="Checkedin" SortExpression="Checkedin" />
<asp:BoundField DataField="Description" HeaderText="Description" SortExpression="Description" />
<asp:BoundField DataField="Dimension" HeaderText="Dimension" SortExpression="Dimension" />
<asp:BoundField DataField="TrackingNum" HeaderText="TrackingNum" SortExpression="TrackingNum" />
<asp:BoundField DataField="ItemID" HeaderText="ItemID" InsertVisible="False" ReadOnly="True" SortExpression="ItemID" />
</Columns>
</asp:GridView>
C# 代码
String sql = "SELECT ItemID, Dimension, Description," +
" Checkedin FROM Item WHERE TrackingNum =@t";
OleDbCommand cm1 = new OleDbCommand(sql, dbCon);
cm1.Parameters.AddWithValue("@s", tr);
OleDbDataAdapter info = new OleDbDataAdapter();
info.SelectCommand = cm1;
DataSet userSet = new DataSet();
info.Fill(userSet);
if (userSet.Tables[0].Rows.Count > 0)
{
GridView1.DataSourceID = null;
GridView1.DataSource = userSet;
GridView1.DataBind();
}
解决方案
是的,它可以TemplateField
从设计器转换为 a,也可以Edit Columns...
通过在 ASPX 中使用此示例并替换现有CheckBox
字段:
<Columns>
<asp:CommandField ShowEditButton="True" />
<asp:TemplateField HeaderText="Checkedin" SortExpression="Checkedin">
<EditItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# Bind("Checkedin") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# Bind("Checkedin") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Description" HeaderText="Description" SortExpression="Description" />
<asp:BoundField DataField="Dimension" HeaderText="Dimension" SortExpression="Dimension" />
<asp:BoundField DataField="TrackingNum" HeaderText="TrackingNum" SortExpression="TrackingNum" />
<asp:BoundField DataField="ItemID" HeaderText="ItemID" InsertVisible="False" ReadOnly="True" SortExpression="ItemID" />
</Columns>
推荐阅读
- java - EJB with @TransactionManagement(javax.ejb.TransactionManagementType.BEAN) : Only session and message-driven beans allowed to access UserTransaction
- blazor - How to add CORS to Blazor Webassembly 3.2 preview
- c# - How to make System.Web XmlSerializer serializer encode quotes c#
- python-3.x - 附加在类中声明的列表变量
- java - 如果已注释,则在成员变量之前换行
- python - TypeError:添加的层必须是类Layer的实例。找到:张量("input_2:0", shape=(?, 22), dtype=float32)
- angular - 垫子进度条。收听上传进度。角
- c++ - 在 c++ 中拥有一组结构的正确方法是什么?
- if-statement - 具有多个条件和覆盖值的 IF 语句
- c# - 无法在 Android 9 上隐藏 Android 键盘