我正在使用DevExpress网格,而我正试图让“国家/地区”列正确显示标题过滤器:
<dx:GridViewDataColumn Caption="Country" FieldName="CountryName"
ShowInCustomizationForm="True" Visible="false">
<Settings AllowHeaderFilter="True"/>
</dx:GridViewDataColumn>
如果“Country”列设置为Visible ='true',则显示标题过滤器(它显示值选项列表)。但是,我希望“国家/地区”列最初是隐藏的,但可以在“自定义”窗口中使用(如上面的代码中所示)。在这种情况下,当列被拖动到“自定义”窗口之外并进入网格并单击标题过滤器时,会遇到Javascript错误:
元素为null element.addEventListener(eventName,func,true);
这是一个已知的错误吗?有没有解决方法?
答案 0 :(得分:0)
将ASPxGridView.Settings.ShowHeaderFilterButton属性设置为true以解决此问题。
以下标记对我来说很好(我正在使用DXperience 10.1.7):
<asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="~/App_Data/nwind.mdb"
SelectCommand="SELECT * FROM [Categories]"></asp:AccessDataSource>
<dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="False" ClientInstanceName="grid"
DataSourceID="AccessDataSource1" KeyFieldName="CategoryID">
<SettingsCustomizationWindow Enabled="True" />
<Columns>
<dx:GridViewDataTextColumn FieldName="CategoryID" ReadOnly="True" VisibleIndex="0">
<EditFormSettings Visible="False"/>
<Settings AllowHeaderFilter="False" />
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn FieldName="CategoryName" Visible="False" VisibleIndex="1">
<Settings AllowHeaderFilter="True" />
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn FieldName="Description" VisibleIndex="2">
<Settings AllowHeaderFilter="False" />
</dx:GridViewDataTextColumn>
</Columns>
<Settings ShowHeaderFilterButton="True" />
</dx:ASPxGridView>