プロが教える店舗&オフィスのセキュリティ対策術

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開発サーバ(右下にアイコン出る)で実行しています。

上記の状態で、ドロップダウンリストのイベントが走らず困っています。
ローカルではポストバックが走らなかったりするのでしょうか…?

A 回答 (3件)

質問の文から察すると、上記のDropDownListはPage_Loadイベントでアイテムを登録しているのでしょうか?


もし、Page_LoadでDropDownListのアイテムを登録しているのなら、IsPostBackを追加してみてはどうでしょうか?
構文は、下のようになります。
If ( IsPostBack == False){
初期化処理
}
    • good
    • 0

>DropDownList1_SelectedIndexChanged


>CheckBox1_CheckedChanged

質問文のミスでしょうか。
それとも CheckBox1_CheckedChanged に来ないと仰っているのでしょうか。後者であれば、来なくて当然ですが。。。

この回答への補足

他コントロールのイベントと混同してしまいました。
実際には、DropDownListのSelectedIndexChangedを取っています。
手書きではなく、稲妻マークからイベント追加したので、記述上の
間違いはないと思っているのですが、なぜ通らないのか…。

補足日時:2010/02/03 13:35
    • good
    • 0

>onselectedindexchanged="DropDownList1_SelectedIndexChanged"


これは、VisualStudioを使っていない人の書き方です。

VisualStudioでは、デザインでDropDownListをダブルクリックもしくはプロパティウインドウのイベントで登録します。
    • good
    • 0
この回答へのお礼

>onselectedindexchanged="DropDownList1_SelectedIndexChanged"

こちらで記載したものでなく、VisualStudioが自動生成したものです。
イベントについてはプロパティウィンドウから定義しています。

お礼日時:2010/02/02 11:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!