- - PR -
DropDownListの項目を選択しても、onSelectedIndexChangedで指定した関数へ制御がわたりません。
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-01-28 10:41
コントロールでは
<asp:dropdownlist id="DropShain"runat="server" onSelectedIndexChanged="DropShain_SelectedIndexChanged" AutoPostBack="True"> コードでは Sub DropShain_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Page_Loadメソッドで毎回新たにDataBind呼び出していません。 どうして制御がわたらないのかがわかりません。 記述に問題があるのでしょうか。 宜しくお願いします。 | ||||||||
|
投稿日時: 2004-01-28 10:58
Sub DropShain_SelectedIndexChanged( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles DropShain.SelectedIndexChanged とか? | ||||||||
|
投稿日時: 2004-01-28 14:13
ありがとうございます。
Handles DropShain.SelectedIndexChangedをつけました。 状況は変わりません。 DropDownListのスクロールさせて、別アイテムを選択しますと、 通常はその選択したアイテムの番号がDropDownListのSelectedIndexに なると思いますが、DropDownListの先頭アイテムitem(0)が選択した ような動作になります。なぜこうなるのかがわかりかねております。 以上、宜しくお願いします。 | ||||||||
|
投稿日時: 2004-01-28 16:13
こんにちは。
とりあえずPage_Loadメソッドの中身だけでも簡単に記述されて見てはどうでしょうか。 現在の情報だけでは皆さん推測しか出来ないと思いますので。 | ||||||||
|
投稿日時: 2004-01-28 16:26
はい、承りました。
Page_Loadメソッドの中身を記述します。 If Not IsPostBack Then cmd = New OleDbCommand(strSQLShain, con2) cmd.CommandType = CommandType.StoredProcedure With cmd.Parameters .Add("@BUSHYO_CODE", OleDbType.Char, 4).Value = "0100" End With ds2 = New DataSet() da.SelectCommand = cmd da.Fill(ds2, "SHAIN") With DropShain .DataSource = ds2.Tables("SHAIN") .DataValueField = "BUSHYO_CODE" .DataTextField = "SNAME" .DataBind() End With End If 以上です。宜しくお願いします。 | ||||||||
|
投稿日時: 2004-01-28 16:39
Handlesを付けたならば、太字の部分を削除してみませんか。 と思ったのですが関係ないみたいですね。 VS.NETが自動で作るイベントプロシージャは スコープがPrivateになっていて、上記のタグだと起動時に怒られます。 Protectedに変更すると、Handlesが付いてなくても、イベントプロシージャが動作します。 というわけで、 @本当に通って無いのか、イベントプロシージャの入り口でブレイクしてみる。 A通ってたら、その中のコードを疑う。 B通ってなかったら、その他のコードを疑う。 といった事をやってみませんか? って、既にやっていたとしたら、すいません。 [ メッセージ編集済み 編集者: NAL-6295 編集日時 2004-01-28 16:53 ] | ||||||||
|
投稿日時: 2004-01-28 17:03
まず確認ですが、 1.ポストバックは発生しているのでしょうか 2.イベントハンドラはコールされているでしょうか この2点がYesなら、 3.ドロップダウンに設定したアイテムのValueが重なっていないでしょうか 私がやって、30分ほど悩んでいたことですが、 text="アイテム1" value="0" text="アイテム2" value="1" ... text="アイテム空" value="0" と設定していたんですね。で、「アイテム空」を選択したのに「アイテム1」が選択されたことになる… | ||||||||
|
投稿日時: 2004-01-28 17:44
Private Sub DropShain_SelectedIndexChangedでブレイクポイントを設定して動作させましたところ、現象がつかみきれてはおりませんが、何回かのうち数回、ブレイクするように なります。 これが、不思議でなりません。 |