- 締切済み
AutoPostBackにしているが、うまくイベントが走らない
AutoPostBackにしているが、うまくイベントが走らない C#(VS2008)、ASP.NET環境です。 ASP.NETでドロップダウンリストを使いたいのですが、イベントが拾えず 困っています。 aspx <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" onselectedindexchanged="DropDownList1_SelectedIndexChanged"> <asp:ListItem></asp:ListItem> <asp:ListItem Value="1"></asp:ListItem> <asp:ListItem>1</asp:ListItem> </asp:DropDownList> CS protected void CheckBox1_CheckedChanged(object sender, EventArgs e) { //処理 } まだサーバがないので、ビルド時に自動的に設定される、ローカルの ASP.NET開発サーバ(右下にアイコン出る)で実行しています。 上記の状態で、ドロップダウンリストのイベントが走らず困っています。 ローカルではポストバックが走らなかったりするのでしょうか…?
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- iryuza
- ベストアンサー率57% (16/28)
質問の文から察すると、上記のDropDownListはPage_Loadイベントでアイテムを登録しているのでしょうか? もし、Page_LoadでDropDownListのアイテムを登録しているのなら、IsPostBackを追加してみてはどうでしょうか? 構文は、下のようになります。 If ( IsPostBack == False){ 初期化処理 }
>DropDownList1_SelectedIndexChanged >CheckBox1_CheckedChanged 質問文のミスでしょうか。 それとも CheckBox1_CheckedChanged に来ないと仰っているのでしょうか。後者であれば、来なくて当然ですが。。。
- todo36
- ベストアンサー率58% (728/1234)
>onselectedindexchanged="DropDownList1_SelectedIndexChanged" これは、VisualStudioを使っていない人の書き方です。 VisualStudioでは、デザインでDropDownListをダブルクリックもしくはプロパティウインドウのイベントで登録します。
お礼
>onselectedindexchanged="DropDownList1_SelectedIndexChanged" こちらで記載したものでなく、VisualStudioが自動生成したものです。 イベントについてはプロパティウィンドウから定義しています。
補足
他コントロールのイベントと混同してしまいました。 実際には、DropDownListのSelectedIndexChangedを取っています。 手書きではなく、稲妻マークからイベント追加したので、記述上の 間違いはないと思っているのですが、なぜ通らないのか…。