如何在C#的下拉列表中设置默认值?

时间:2015-07-03 04:14:41

标签: c# asp.net

DataSet dsCurrency = new DataSet();               
dsCurrency = ParamCurrency.SelectCurrencys();
ddCurrencyField.DataSource = dsCurrency;
ddCurrencyField.DataTextField = "CurrencyName";
ddCurrencyField.DataValueField ="CurrencyCode";               
ddCurrencyField.DataBind();

如何使用C#选择下拉列表控件的默认值?

3 个答案:

答案 0 :(得分:1)

如果您知道该值将存在:

<%= simple_form_for @service do |f| %>
  <div class="field">
    <%= f.label :name %>
    <%= f.text_field :name %>
  </div>
  <div class="field">
    <%= f.label "Select service category" %>
    <br>

    <%= collection_select(:service, :service_menu_id, ServiceMenu.all, :name, :name, {:prompt => true }) %>
  </div>

  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

否则

ddCurrencyField.FindItemByText("YourDefaultText").Selected = true;

您还可以按值找到项目:

ListItem selectedListItem = ddCurrencyField.Items.FindItemByText("YourDefaultText");

if (selectedListItem != null)
{
    selectedListItem.Selected = true;
};

答案 1 :(得分:0)

如果此下拉列表是组合框,请使用:

ddCurrencyField.SelectedIndex = ddCurrencyField.Items.IndexOf("Wanted Value");

答案 2 :(得分:0)

我假设你的数据源对象(dsCurrency)没有解析下拉列表的默认值。 首先,您必须添加默认项目。绑定数据源后,请执行以下操作。

ddCurrencyField.Items.Insert(0, new ListItem("-- Select --",0));

使用上面的代码,您将选择默认/第一项作为“--Select--”。如果它没有选择第一个项目,那么只需将SelectedIndex设置为0。

填充下拉列表后,有两种方法可以设置默认项目。

  1. 您可以使用“SelectedValue”属性
  2. 您可以使用“SelectedIndex”属性
  3. 大多数代码示例都在前面的答案中给出。但我更喜欢使用“FindByValue”方法。

    ddCurrencyField.SelectedIndex = ddCurrencyField.Items.IndexOf(ddCurrencyField.Items.FindByValue(myValue));
    

    如果您想编写安全代码,请使用第二个选项。