C# 如何使此复选框在GridView中工作?

C# 如何使此复选框在GridView中工作?,c#,asp.net,gridview,sql-server-2008-r2,C#,Asp.net,Gridview,Sql Server 2008 R2,我是一名新的ASP.NET开发人员,尝试使用GridView控件作为管理每个部门员工的一种方式。此GridView将显示数据库中employee表中的所有员工。现在,我面临以下问题: 仅供参考,我有以下数据库设计: Employee Table: Username, Name, JobTitle, BadgeNo, IsActive, DivisionCode Divisions Table: SapCode, DivisionShortcut (IsActive类似于一个标志(位数据类型),

我是一名新的ASP.NET开发人员,尝试使用GridView控件作为管理每个部门员工的一种方式。此GridView将显示数据库中employee表中的所有员工。现在,我面临以下问题:

仅供参考,我有以下数据库设计:

Employee Table: Username, Name, JobTitle, BadgeNo, IsActive, DivisionCode
Divisions Table: SapCode, DivisionShortcut
(IsActive类似于一个标志(位数据类型),用于指示员工是否在工作分配中)

i活动将作为复选框显示在GridView中。如果选中,则表示为真,并且该员工在其部门中存在。如果未选中该选项,则表示该员工不在该部门,应在GridView中隐藏该选项那么怎么做呢?此外,我想隐藏在编辑模式下复选框旁边出现的(真)文本。怎么做呢?

ASP.NET代码:

<asp:TemplateField HeaderText="Is Active?">
                    <ItemTemplate>
                        <%# Eval("IsActive")%>
                    </ItemTemplate>
                    <EditItemTemplate>
                        <asp:CheckBox ID="isActive" runat="server" Text='<%# Bind("IsActive")%>' />
                    </EditItemTemplate>
                </asp:TemplateField>

更新:


我希望该员工的所有信息都隐藏在GridView中,因为他处于非活动状态。

试试这个

<asp:CheckBox ID="isActive" runat="server" Visible='<%# Bind("IsActive")%>' Text='<%# Bind("IsActive")%>' />

改用这个。 已删除text属性,因此IsActive将不可见。可视性由IsActive标志控制

<asp:TemplateField HeaderText="Is Active?">
                    <ItemTemplate>
                        <%# Eval("IsActive")%>
                    </ItemTemplate>
                    <EditItemTemplate>
                        <asp:CheckBox ID="isActive" runat="server" Checked='<%# Eval("IsActive").ToString().Equals("True")  %> />
                    </EditItemTemplate>
                </asp:TemplateField>

您需要绑定Checked属性,而不是文本。我问自己,当用户处于非活动状态时,他希望如何使用户处于活动状态,因为复选框将不可见。但不管怎样,这正是他想要的(除了
选中的
状态)。是否要隐藏非活动用户,或者是否仍希望看到他们但未选中复选框。如果您可以使用Checked属性而不是visibleAh,那么您希望隐藏整行吗?我只想隐藏非活动用户。我希望将员工及其所有信息隐藏在GridView中,因为他处于非活动状态
 DataSet filter = ds.Tables[0].Select("IsActive == 'True'");
    gridUser.DataSource = filter;
    gridUser.DataBind();