0
我正在開發一個基於Web表單的Web應用程序。它使用一些DropDownList asp控件。這是我已經附上了默認爲空值--- seleziona控制---Force DropDown list PageLoad的SelectMethod
<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中?
即使沒有'if'條件並且在控件上設置'AutoPostBack =「true」'屬性,它仍然具有相同的行爲。 – 2015-02-05 20:19:53
您是否試圖在初次訪問時檢查控件?或者這是在後續回發? – 2015-02-06 16:55:41