2009-06-09 10 views
0

私はVisual Studio 2008 with .net 3.5を使用しています。 私はアクセスデータベースにリンクされているAccessDataSourceを持っています。 AccessDataSourceを使用するドロップダウンリストがあります。すべてがウィザードで完了し、すべてうまくいっていました。ASP.NET AcessDataSourceとドロップダウンリスト

ページの読み込み時に、私はselectedValueで何かを更新するために私のdropdownlistのSelectedIndexChangedを呼び出すことにしましたが、私の驚きにはselectedValueは空の文字列でした。場合

私はサブをPage_Load保護された私のPage_Loadの でこれを入れて問題解決するには(オブジェクトとしてByVal送信者は、System.EventArgsとしてByVal e)はMe.Load を処理していないIsPostBackプロパティ次に

 ddlAnniversaire.DataBind() 
     ddlAnniversaire_SelectedIndexChanged(Nothing, Nothing) 
    End If 

End Sub 

Iドンの場合ddlAnniversaire.DataBind()を実行すると、私のメソッドでddlAnniversaire.selectedValueが ""なります。どうして?
通常、ddlAnniversaire.DataBind()は呼び出されますか?

おかげ

+0

あなたはちょうどあなたが使用することができ、あなたのDDLリストで何かを選択するwan't場合 JP:SelectedIndexを= 0またはSelectedValueの= "あなたの価値を"。 –

答えて

1

のDataBind()イベントは、をPage_Load後Page Lifecycle (MSDN link)のPreRenderイベントで起こります。このことができます

希望、

+0

Page_LoadでDataBing()を呼び出せたらいいですか? これは2回呼び出される予定ですか? – Joel

+0

いくつかのテストの後、私は時には2度呼ばれることがあることがわかりましたが、私は理由を特定できません。 – Jonathan

+0

アイテムを事前に選択するには、ページのOnRenderイベントでDDLのSelectedIndexを設定するか、DDLのLoadイベントを処理します。 – Jonathan

関連する問題