用户控件的gridview控件中的问题

时间:2011-02-24 12:57:09

标签: asp.net gridview user-controls hide

我的问题是我从父页面设置数据源。但是如果我对gridview的某些列设置了禁用,则会触发这些禁用列模板中的控件事件。就像我在一列中有一个复选框一样,如果在数据绑定时从父页面禁用该列,则会触发check_checked事件。 这里是我的代码 - 用户控件aspx

<asp:TemplateField HeaderText="Exclude Null" ItemStyle-Width="50px">
                    <HeaderTemplate>
                        Exclude Null
                    </HeaderTemplate>
                    <ItemTemplate>
                        <asp:CheckBox runat="server" ID="chkExNull" OnCheckedChanged="chkExNull_OnCheckedChanged"
                            AutoPostBack="true" />
                    </ItemTemplate>
                    <ItemStyle HorizontalAlign="left" VerticalAlign="Top" />
                    <HeaderStyle HorizontalAlign="left" VerticalAlign="Top" />
                </asp:TemplateField>

父母的.cs文件

GridView gvCondition = (GridView)ucCondition.FindControl("gvCondition");
    gvCondition.DataSource = ConditionFieldCollection;
    gvCondition.Columns[5].Visible = false;
    gvCondition.Columns[6].Visible = false;
    gvCondition.Columns[7].Visible = false;
    gvCondition.Columns[8].Visible = false;
    gvCondition.DataBind();

我该怎么做,是否有其他方法可以隐藏用户控件的网格视图控件的一些列?

1 个答案:

答案 0 :(得分:1)

DataBind()之前。写下这个:

gvCondition.DataBound += new EventHandler(gvwCondition_DataBound);

并在该方法中写入隐藏列的代码。

希望有所帮助。