根据asp.net的另一个SELECT控件选项过滤一个SELECT控件的选项

时间:2012-03-22 20:31:36

标签: c# asp.net

我有两个选择控件。第一个包含国家/地区的名称,另一个包含城市名称。我需要从第一个显示第二个显示所选国家/地区城市的名称。

2 个答案:

答案 0 :(得分:1)

你没有说明你想要完成它的方式(postback与ajax),所以,我选择了postback

  1. 为国家/地区创建DropDownList控件(在我的示例中为 ddlCountries
  2. 将国家/地区列表绑定到它 - 可能是Page_Load包裹在if (!Page.IsPostback)
  3. 双击SelectedIndexChanged事件,为该事件创建处理程序。
  4. 然后处理国家SelectedIndexChanged控件上的DropDownList事件,并为城市设置DropDownList未经测试的示例):

    Protected void ddlCountries_SelectedIndexChanged(object sender, System.EventArgs e)
    {
        // Get the list of cities for the selected country 
        // using ddlCountries.SelectedItem.Value;
        ddlCities.DataSource = GetCities(ddlCountries.SelectedItem.Value);
        ddlCities.DataTextField="CityName";
        ddlCities.DataValueField="CityName";
        ddlCities.DataBind();
    }
    

答案 1 :(得分:0)

最简单的解决方案是选择国家:

var citiesToDisplay = Cities.Where(city=> city.CountryId == selectedCountryId);