Infrastics UltraWebGrid客户端事件在.NET 4.5中中断



我最近将我的ASP.NET项目更新为.NET 4.5(从3.5)。这导致ClientSideEvents无法在我的Infrastics UltraWebGrid上正常启动。

问题是,在我的.aspx文件中,我在UltraWebGrid上配置了一个客户端事件,如下所示:

<ClientSideEvents ClickCellButtonHandler="webGridSoftwareConfigurations_CellClickHandler" />

在一个js文件中,我有以下内容:

function webGridSoftwareConfigurations_CellClickHandler(gridName, cellId) {
    // Do some stuff
}

以前,当我在一个单元格中单击时,javascript函数会被触发。但现在,在.NET 4.5更新之后,什么也没发生。我使用的是Infrasgistics2,Infrasgistics.Web.dll版本11.1.20111.2112

我认为问题的根本原因实际上是ASP.NET 4.x更改了控件id的生成方式。以前,id的前缀是ctl00,而较旧的Infrastics NetAdvantage控件似乎依赖于此。

我的解决方案是:

首先,将Infrasgistics NetAdvantage更新到最新版本(NetAdvantage 2011)。有更新的版本,但这个版本仍然支持.NET 3.5,我需要它,因为我无法将所有使用Infrastics NetAdvantage的项目更新为.NET 4.5

然后更新web.config,以便我们使用旧的命名控件的方式:

<configuration>
    <system.web>
        <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID" >

感谢这个答案,以及Scott Gu的这篇博客文章。

相关内容

  • 没有找到相关文章

最新更新