小さな Web フォーム ベースの Web アプリケーションを開発しています。いくつかの DropDownList ASP コントロールを使用します。これは、デフォルトの空の値を追加したコントロールです--- seleziona ---
<asp:DropDownList
ID="dropQuestionari"
runat="server"
SelectMethod="GetQuestionari"
AppendDataBoundItems="true"
ItemType="Models.Questionario"
DataTextField="Questionariointestazione"
DataValueField="idQuestionario">
<asp:ListItem Text="--- seleziona ---" Value="" Selected="true"></asp:ListItem>
</asp:DropDownList>
コントロールは、リストに入力するために必要なすべての項目を取得するメソッドでSelectMethod
プロパティを使用します。GetQuestionari()
正常に動作しますが、ドロップダウン リストが空 (既定の項目を除く) かどうかを確認し、そうであれば既定のオブジェクト テキストを変更する必要があります。私はこのように(コードビハインドで)試しました:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
//...
if (dropQuestionari.Items.Count == 1)
{
dropQuestionari.Items[0].Text = "Nessun questionario per l'utente corrente";
this.confirmButton.Enabled = false;
}
}
}
ページの読み込み時にリストが読み込まれず、dropQuestionari.Items.Count
常に返されるよう1
です (明らかに、デフォルトのアイテムのみがカウントされます)。PageLoad にリストを強制的に入力するにはどうすればよいですか?