基于db记录从下拉菜单中选择项目

问题描述:

我在asp.net应用程序c#中有这个dropdown。当我从数据库获取一行时,我想从下拉菜单中选择相应的值从dropdown。就像我在数据库中保存了我的名字并且下拉列表中包含名称列表,然后在搜索按钮上点击下拉菜单应该显示我选择的名字,而不是写入最初的项目“请选择”并写下我的名字。当我按搜索它显示validator“请选择一个名称”,我必须下拉并再次选择我的名字,然后继续。 代码:基于db记录从下拉菜单中选择项目

ddl_bank.SelectedItem.Text= dt.Rows[0]["BANK_NAME"].ToString(); 

这里是下拉

  <label for="textfield">&nbsp;Bank Name</label>&nbsp; 
      <asp:DropDownList Font-Size="Small" ID="ddl_bank" runat="server" AutoPostBack="true" 
       AppendDataBoundItems="True" 
       OnSelectedIndexChanged="ddl_bank_SelectedIndexChanged"> 
       <asp:ListItem Value="0" Selected="True" Text="Select Bank Name"></asp:ListItem> 
      </asp:DropDownList> 
      <asp:RequiredFieldValidator 
       ID="RequiredFieldValidator3" runat="server" InitialValue="0" 
       ControlToValidate="ddl_bank" Display="Dynamic" ErrorMessage="Please select a bank" 
       SetFocusOnError="True" Font-Italic="True" ForeColor="Red"> 
      </asp:RequiredFieldValidator> 

更改您的代码

ddl_bank.Items.FindByText(dt.Rows[0]["BANK_NAME"].ToString()).Selected = true; 

使用SelectedItem.Text设置当前选定的项目在这样您就可以体验被改写DropDownList文本。

我提供的代码首先在文本列表中找到相应的项目(或者使用FindByValue代替值),然后选择它。

你可能会在代码前收到一个错误,你只能有一个DropDownList中的一项, 使用ddl_bank.ClearSelection();上述

+0

说.FindItemsByText无法找到 – user3132148

+0

现在更新它。 – CurseStacker

+1

waow !!!!!谢谢an millionnnnnnnnnnn !!!!!!不能谢谢你够... – user3132148

的DropDownList

注的使用 “的SelectedValue” 属性:首先,你需要将数据绑定到dropdonwnlist,然后使用 “的SelectedValue” 的下拉列表选项选择。

ddl_bank.SelectedValue= dt.Rows[0]["BANK_NAME"].ToString(); 
+0

好吧,我已经绑定的下拉现在有银行的名称。当我第一次保存我的记录时,我从下拉菜单中选择一个银行名称。现在下一次我抓取我的记录,我希望它从下拉列表中选择它从db中获取的值,这正是我的问题。因为我的项目没有任何价值 – user3132148

+0

http://*.com/a/10242041/2931264 试试这个答案 –

+0

谢谢你们:)推荐它 – user3132148