簡體   English   中英

下拉列表項計數正常

[英]Drop down list items count is working

我有一個下拉列表,其中具有硬編碼的第一項,其他均由sql數據源綁定。 現在,在C#代碼上,我希望此下拉列表的項始終計數為1(第一個硬編碼列表項)。 而此下拉列表正確顯示了瀏覽器上的所有列表項。 我無法理解確切的問題。

<asp:DropDownList ID="ddlGroup" runat="server" DataSourceID="dsGroupListByUserId"
     Width="100px" DataTextField="GroupName" DataValueField="GroupID" AppendDataBoundItems="True">
    <asp:ListItem Value="0">N/A</asp:ListItem>
</asp:DropDownList>
<asp:SqlDataSource ID="dsGroupListByUserId" runat="server" ConnectionString="<%$ ConnectionStrings:EMSsql %>" SelectCommand="GetGroup_ByEventID" SelectCommandType="StoredProcedure" >
    <SelectParameters>
        <asp:SessionParameter DefaultValue="0" Name="EventID" SessionField="EventID" Type="Int64" />
    </SelectParameters>
</asp:SqlDataSource>

這就是我試圖獲取項目數的方式-

int ItemsCount = ddlGroup.Items.Count;

將您的數據綁定放在!Page.IsPostBack中。

每當頁面回發時,所有內容都會刷新,這就是為什么您的計數為1的原因,因為它是唯一的客戶端列表項。 任何填充的服務器端都需要保留在一個不回發的位置。

If (!Page.IsPostBack)
{
ddlGroup.DataBind();
}

我認為這是因為您沒有在page_Load使用Page.IsPostBack屬性。

使用IsPostBack像Page_load

private void Page_Load()
{
    if (!IsPostBack)
    {
         // Bind your dropdown.
    }
}

希望對你有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM