簡體   English   中英

asp.net DropDownList

[英]asp.net DropDownList

目前,我有一個下拉列表,如下所示:

<asp:DropDownList  ID="DropDownList1" runat="server"  AutoPostBack="True" 

    OnSelectedIndexChanged="SelectionHasChanged"
                DataSourceID="SqlDataSource1" DataTextField="Name" DataValueField="ID" 
                 Width="214px">
            /asp:DropDownList>

            asp:SqlDataSource ID="SqlDataSource1" runat="server" 
                ConnectionString="<%$ ConnectionStrings:MyDBConnectionString1 %>" 
                SelectCommand="SELECT [ID], Name], [Name] FROM [Names]">
            /asp:SqlDataSource>

當選擇被更新或刪除時,我試圖做兩件事:1)從DropDownList刪除已刪除的內容2)加載頁面時,在字段中找到數據庫中的第一個條目,我會喜歡空白還是說“選擇”

目前,我需要重新整理頁面以刷新已刪除項目的下拉列表。

我試過添加DropDownList1.DataBind(); 用各種方法(page_load,update,delete)和DropDownList1.DataSource = SqlDataSource1; (但是我收到一條消息,刪除(SqlDataSource1?)的對象。

我添加了一個名為EnableViewState="false"的標簽/控件,當我選擇另一個項目時,它會刷新下拉列表,但是當我刪除一個項目時,我需要立即刷新列表。

1.In為了從下拉列表中刪除一個項目,你要做的是遍歷ListItem下拉列表中的值字段(比較DataValueField )的ListItem的項目與已更改或刪除的選擇,從下拉列表中,如果將其刪除它匹配。 例如:

private void removeItem(string ID)
    {
        for (int i = 0; i < dropdownList.Items.Count; i++)
            if (dropdownList.Items[i].Value == ID)
            {
                dropdownList.Items.RemoveAt(i);
                break;
            }
    }

2.僅在綁定下拉列表之后,在后面的代碼中,在Index 0處添加新的ListItem ,即可解決將“選擇”或空白顯示為最上面的選擇的問題:

dropdownList.DataBind();
dropdownList.Items.Insert(0, new ListItem("Select"));

暫無
暫無

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

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