VBとAjaxを使用して動作するWebアプリケーションがあります。サーバーへのポストバックでの苛立たしい「ちらつき」を避けるために、updatepanelsを使用しています。
updatepanel自体の中でボタンコントロールを定義して(外に移動しようとしたところ、壊滅的なエラーが発生したため、そのままにしておきます)、現在のパネルを表示せず、兄弟パネルを表示したいと思います。これは、ボタンを2回クリックする必要があることを除いて機能します。ダブルクリックではなく、もう一度クリックするよりも1回クリックした。
ブレークポイントを設定する際に、ボタンにアタッチされている背後のコードが実際には最初のクリックで実行されていることを発見しましたが、パネルが期待どおりに切り替わりません。同じボタンをクリックするか、さらに悪いことに、別のボタンをクリックすると、2番目のパネルが表示されるという予期された動作が発生します。ただし、2番目のボタンがクリックされると、3番目のパネルが表示され、2番目のボタンがクリックされたために3番目のパネルが表示されるという不要なボーナスがあります。
この動作は、updatepanelとそのAjaxの性質によるものだと思います。2回目のクリックを回避する方法はありますか?アップデートパネルを誤用していますか?モーダルポップアップ(AjaxToolKitからすぐに)を使用したかったのですが、データのポストバックに問題があったため、このアプローチを選択しました。これは私を十分長い間悩ませてきたので、どんな洞察、援助、さらには批判も歓迎されるでしょう。ありがとう