0

VBコードは次のとおりです。

 Dim button As New Button
 Dim xpanel As New Panel
 button.Text = "Submit"
 button.ID = "button"
 button.Height = "40"
 button.Attributes.Add("Autopostback", "true")
 button.Attributes.Add("Onclick", "Submit_Click") <----commented
 button.Attributes.Add("RunAt", "server")
 Dim trigger As New AsyncPostBackTrigger()
 trigger.ControlID = "button"
 trigger.EventName = "Submit_Click"
 AddHandler button.Click, AddressOf Submit_Click
 xpanel.Controls.Add(button)
 Dim literalx As New Literal
 submitplaceholder.Controls.Add(literalx)
 submitplaceholder.Controls.Add(xpanel)

セットアップは次のとおりです。updatepanel 内から、ページの下部にある非表示のボタンで javascript (thatbutton.onclick 関数) を起動するボタンがクリックされ、次に ajaxtoolkit:ModalPopupExtender で「クリック」が実行され、上記のボタンで page_load に動的に取り込まれたポップアップするモーダルウィンドウ (およびその他の情報ですが、これは重要ではありません)。今のところ、ポストバックはありません。

これで、そのページのボタンをクリックしました。ポストバックして、関数 Submit_Click を呼び出すようにします。関数が実際に呼び出されたものは気にしませんし、_Click が予約されていることは知っていますが、それでも : 関数を起動しますが、常にエラーが発生し、望ましくない動作が発生します。

何かが正しくないので、私は一生、他に試してみることができません. プロパティ OnClick を使用してから autopostback にすることは、コントロールを動的に設定すると機能しないようです。何かご意見は?

4

1 に答える 1

2

button.Attributes は HTML 属性のコレクションであるため、思い通りには機能しません。

これを試して:

button.UseSubmitBehavior = True
AddHandler button.Click, AddressOf  Submit_Click

それ以外の

button.Attributes.Add("Autopostback", "true")
button.Attributes.Add("Onclick", "Submit_Click") <----commented
button.Attributes.Add("RunAt", "server")
于 2012-10-22T16:05:26.653 に答える