2011-12-30 9 views
0

通信アドレスが永続アドレスと同じであることを示すチェックボックスがあります。チェックボックスチェックのドロップダウンリストのSelectedIndexChanged()イベント

  1. DRP_Comm_Country1
  2. DRP_Comm_State1
  3. DRP_Per_Country2
  4. DRP_Per_State2

私は、チェックボックスをチェックすると、永久的なアドレスdropdownlistsの項目は、通信アドレスと同じでなければなりません - 4 dropdownlistsがあります。それを可能にする方法は?

私のコードは

protected void CheckBox2_CheckedChanged(object sender, EventArgs e) 
{ 
    DRP_Per_Country2.SelectedIndex = DRP_Comm_Country1.SelectedIndex; 
} 

しかしDRP_Per_Country2SelectedIndexChanged()イベントfired.Isそれ間違った方法を取得していないのですか?もしそうなら、それをどうやって使うのですか?

+0

DRP_Per_Country2.Text = DRP_Comm_Country1.Text; – Sandy

+0

@rapsalands ...次にDRP_Per_State2は機能しません – sun

答えて

2

まず第一に、あなたはすべてのDropDownListため

AutoPostBack = true 

プロパティを設定する必要があります。これがうまくいかない場合は、SelectedIndexChangedイベントを手動で電話してください。

protected void CheckBox2_CheckedChanged(object sender, EventArgs e) 
{ 
    DRP_Per_Country2.SelectedIndex = DRP_Comm_Country1.SelectedIndex; 
    DRP_Per_Country2_SelectedIndexChanged(sender,e); 
} 

これは必ずイベントを起動します。

+0

@kishorejangid ...それを試してみましょう – sun

+0

メソッドとしてindexchange内にコードをカプセル化し、メソッドを明示的に呼び出すほうがよいでしょう。 IMOイベントハンドラはイベントの結果としてのみ呼び出されるべきです。 [燃えた指のチェック](http://stackoverflow.com/a/6545857/570150) – V4Vendetta

+0

それがあなたのために働く場合、答えを受け入れてください、返事をありがとう。 –

関連する問題