DevExpress Hidden GridView CSS问题

时间:2011-08-11 21:58:35

标签: asp.net updatepanel devexpress repeater

我有一个转发器控件,它为每个绑定到转发器的项目重复一个DevExpress ASPxGridView。转发器包含在更新面板中。 UpdatePanel外部的页面上的事件会触发UpdatePanel(以及随后的转发器)进行更新。如果存在绑定到转发器的记录,则一切正常。转发器为每条记录渲染一个网格,所有样式看起来都很完美。

如果页面最初加载且转发器中没有要显示的项目,则不会呈现任何网格(直到此时才按预期工作)。如果最终添加了记录并且转发器重新绑定(由于触发的UpdatePanel),则不显示网格样式。如果刷新整个页面,网格的样式将完美显示。请记住,我正在使用网格附带的默认样式之一,因此这些样式是从AXD中提取的,而不是包含在我的MasterPage中。

要发布的代码太多了,但标记的核心看起来与此类似:

<asp:UpdatePanel ID="the UpdatePanelInQuestion" runat="server" UpdateMode="Conditional">
  <asp:Repeater ID="theRepeaterInQuestion" runat="server" OnItemDataBound="theMethodThatHandlesGridPopulation">
    <ItemTemplate>
      <dxwgv:ASPxGridView ID="theGridViewInQuestion" runat="server" EnableViewState="false">
        <Columns>
        ...
        </Columns>
    </ItemTemplate>
  </asp:Repeater>
</asp:UpdatePanel>

如何在没有以下情况下正确显示网格样式的任何想法: 1)刷新整个页面而不是触发。 2)在style =“display:none;”的页面上放置另一个空网格强制下载样式。

1 个答案:

答案 0 :(得分:0)

此问题是由于最初未在页面上注册DX ASP.NET控件所需的脚本引起的。可以通过 DevExpress.Web.ASPxClasses.ASPxWebControl.RegisterBaseScript 方法明确地注册它们。

请查看http://www.devexpress.com/issue=B191046支持中心相关票据。