作成日: 2014/10/31 最終更新日: 2015/01/15
文書種別
不具合
状況
修正済み
詳細
UpdatePanelに配置されたC1GridViewにおいて、ItemTemplateにajaxToolkitが配置されている場合、データソースを再バインドすると下記メッセージのエラーが発生します。
「0x800a139e - JavaScript 実行時エラー: Sys.InvalidOperationException: Two components with the same id '********' can't be added to the application.」
◎サンプルコード (aspx)
◎サンプルコード (JavaScript)
◎サンプルコード (VB)
◎サンプルコード (C#)
「0x800a139e - JavaScript 実行時エラー: Sys.InvalidOperationException: Two components with the same id '********' can't be added to the application.」
◎サンプルコード (aspx)
<ajaxToolkit:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server" …>
</ajaxToolkit:ToolkitScriptManager>
…
<asp:UpdatePanel ID="UPDATE_PANEL" runat="server" …>
<ContentTemplate>
<wijmo:C1GridView ID="GRID_VIEW" runat="server" …>
<Columns>
…
<wijmo:C1TemplateField …>
<ItemStyle Wrap="false" />
<ItemTemplate>
<asp:TextBox ID="text1" runat="server" />
<ajaxToolkit:DropDownExtender ID="dropdown1" runat="server" >
</ajaxToolkit:DropDownExtender>
<asp:Panel ID="panel1" runat="server" />
</ItemTemplate>
</wijmo:C1TemplateField>
</Columns>
</wijmo:C1GridView>
</ContentTemplate>
</asp:UpdatePanel>
</ajaxToolkit:ToolkitScriptManager>
…
<asp:UpdatePanel ID="UPDATE_PANEL" runat="server" …>
<ContentTemplate>
<wijmo:C1GridView ID="GRID_VIEW" runat="server" …>
<Columns>
…
<wijmo:C1TemplateField …>
<ItemStyle Wrap="false" />
<ItemTemplate>
<asp:TextBox ID="text1" runat="server" />
<ajaxToolkit:DropDownExtender ID="dropdown1" runat="server" >
</ajaxToolkit:DropDownExtender>
<asp:Panel ID="panel1" runat="server" />
</ItemTemplate>
</wijmo:C1TemplateField>
</Columns>
</wijmo:C1GridView>
</ContentTemplate>
</asp:UpdatePanel>
◎サンプルコード (JavaScript)
<script type="text/javascript" defer="defer">
function changeClientSelectionMode(value) {
$('#GRID_VIEW').c1gridview("option", "clientSelectionMode", value);
}
</script>
function changeClientSelectionMode(value) {
$('#GRID_VIEW').c1gridview("option", "clientSelectionMode", value);
}
</script>
◎サンプルコード (VB)
GRID_VIEW.ShowHeader = True
GRID_VIEW.DataSource = String.Empty
Dim dt As New DataTable()
…
GRID_VIEW.DataSource = dt
' データバインド
GRID_VIEW.DataBind()
UPDATE_PANEL.Update()
GRID_VIEW.DataSource = String.Empty
Dim dt As New DataTable()
…
GRID_VIEW.DataSource = dt
' データバインド
GRID_VIEW.DataBind()
UPDATE_PANEL.Update()
◎サンプルコード (C#)
GRID_VIEW.ShowHeader = true;
GRID_VIEW.DataSource = string.Empty;
DataTable dt = new DataTable();
…
GRID_VIEW.DataSource = dt;
// データバインド
GRID_VIEW.DataBind();
UPDATE_PANEL.Update();
GRID_VIEW.DataSource = string.Empty;
DataTable dt = new DataTable();
…
GRID_VIEW.DataSource = dt;
// データバインド
GRID_VIEW.DataBind();
UPDATE_PANEL.Update();
回避方法
この問題はバージョン4.0.20143.195で修正されました。
修正版の適用方法については、アップデートの方法を参照してください。
修正版を適用しない場合の回避方法は次のとおりです。
ToolkitScriptManagerのScriptModeを"Release"とする。
修正版の適用方法については、アップデートの方法を参照してください。
修正版を適用しない場合の回避方法は次のとおりです。
ToolkitScriptManagerのScriptModeを"Release"とする。
旧文書番号
81033