0

我最近将我的 ASP.NET 项目更新为 .NET 4.5 (from 3.5) 。这导致ClientSideEvents我的 Infragistics 无法正常触发UltraWebGrid

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

<ClientSideEvents ClickCellButtonHandler="webGridSoftwareConfigurations_CellClickHandler" />

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

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

以前,当我单击一个单元格时,会触发 javascript 函数。但是现在更新到 .NET 4.5 之后,什么都没有发生。我正在使用 Infragistics2,Infragistics.Web.dll 版本为 11.1.20111.2112

4

1 回答 1

0

我认为我的问题的根源实际上是由于 ASP.NET 4.x 改变了控件 ID 的生成方式。以前,id 带有前缀,ctl00并且旧的 Infragistics NetAdvantage 控件似乎依赖于此。

我的解决方案是:

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

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

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

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

于 2013-08-19T10:38:00.847 回答