gridview では、次の 2 つのシナリオを処理しています。
1) グリッドの行クリックで selectIndexChanged イベントを発生させるために、「onRowCreated」イベントに onclick ハンドラをアタッチします。行ごとにコードが実行されます。
e.Row.Attributes.Add("onClick", Page.ClientScript.GetPostBackEventReference(this, "Select$" + e.Row.RowIndex.ToString()));
2) また、グリッドの最初のセルにあるイメージ ボタンのコマンド名を「削除」に設定して、イメージ ボタンをクリックするとグリッドの削除イベントが発生するようにします。
<ItemTemplate>
<ImageButton ID="imbDelete" CommandName="Delete" runat="server" SkinID="DeleteButton" ToolTip="Delete" CausesValidation="false" />
</ItemTemplate>
これらのシナリオはすべて、.net 4.5 (更新された ajax コントロール ツールキットもある) にアップグレードする前は正常に動作していましたが、現在、これら 2 つの操作が競合しており、削除ボタンをクリックすると削除操作がハングします。削除ボタンをクリックした後、select は同じ行の一部として起動され (Begin Request/End request が Select に対して呼び出されます)、次に (Begin request for Delete Operation が呼び出され、end request は発生しません)。したがって、操作がハングします。
- これは、ソリューションが IIS に展開されている場合にのみ発生します。ASP.NET 開発サーバーで正常に動作します。
- すべてのバージョンの IE でのみ発生します。他のブラウザでは正常に動作します。
- 行をクリックするだけで、 selectedIndexChanged イベントが呼び出されます。しかし、行のセルにある削除ボタンをクリックすると、操作がハングし、イベントは呼び出されません。
この問題のために私は夢中になっています。どんな助けも大歓迎です。更新: まだ立ち往生しています。何かアイデアはありますか?
ガウラフ・タレイ