2010-11-16 8 views
0

Я использую сетку DevExpress, и я пытаюсь получить столбец «Страна», чтобы отобразить фильтр заголовка правильно:DevExpress сетки - фильтр заголовков не работает, если колонка изначально скрыта

<dx:GridViewDataColumn Caption="Country" FieldName="CountryName" 
    ShowInCustomizationForm="True" Visible="false"> 
    <Settings AllowHeaderFilter="True"/> 
</dx:GridViewDataColumn> 

Если столбец «Страна» имеет значение Visible = 'true', тогда фильтр заголовка отображается как следует (он показывает список опций значения). Однако я хочу, чтобы столбец «Страна» был первоначально скрытым, но доступен в окне настройки (как в приведенном выше коде). В этом случае, когда столбец перетаскивается за пределы окна настройки и в сетку, и нажимается фильтр заголовка, возникает ошибка Javascript:

element is null element.addEventListener (eventName, func, true);

Это известная ошибка? Есть ли обходные пути?

ответ

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> 
+0

Спасибо, но если я установить это свойство истинно, то все столбцы будут иметь фильтр заголовка. Я попробовал установить AllowHeaderFilter как false для этих столбцов, но это не влияет. –

 Смежные вопросы

  • Нет связанных вопросов^_^