DropDownList控件之使用技巧

简介: 开发中经常会遇到这样的问题,就是利用下拉列表框来进行数据绑定显示,以供用户选择使用。在绑定中我们通常会为绑定后的第0个位置添加一个类似与"--请选择--"之类的提示项。

开发中经常会遇到这样的问题,就是利用下拉列表框来进行数据绑定显示,以供用户选择使用。

在绑定中我们通常会为绑定后的第0个位置添加一个类似与"--请选择--"之类的提示项。

在获取一个DataSet对象后,可以为DropDownList控件进行绑定,绑定语句如下:

DataSet ds = DM.getDataSet(strSQL);

...

this.ddlCountry.DataTextField = "CountryName";

this.ddlCountry.DataValueField = "CountryID";

this.ddlCountry.DataSource = ds;

this.ddlCountry.DataBind();

this.ddlCountry.Items.Insert(0,"--请选择--");

 

这里为了代码复用,可以对以上的DropDownList控件的绑定提取出一个方法来,比如说BindDropDownList()

private void BindDropDownList()

{

    ...

     DataSet ds = DM.getDataSet(strSQL);

     ...

    this.ddlCountry.DataTextField = "CountryName";

    this.ddlCountry.DataValueField = "CountryID";

    this.ddlCountry.DataSource = ds;

    this.ddlCountry.DataBind();

    this.ddlCountry.Items.Insert(0,"--请选择--"); 

}

 

在编辑页面中,当从数据库中取得数据后,在下拉列表框中要让被选中的项值要是从数据库中取出的值,怎么做呢?

 首先根据获取的一行数据集DataSet的对象来分别获得各个字段的值,然后进行赋值

DataSet ds =  DM.getDataSet(strSQL);

...

foreach(DataRowView drv in ds.Tables[0].DefaultView)

{

     ...

      //其它字段的绑定

     ...

     //调用DropDownList控件绑定方法

     BindDropDownList();

     this.ddlCountry.Items.FindByText(drv["CountryName"].ToString()).Selected = true;

    //一个小技巧,让被选中的项字体发生改变

    this.ddlGFLX.SelectedItem.Attributes.Add("style", "color: red");

    this.ddlGFLX.SelectedItem.Attributes.Add("style", "background-color: red"); //这是是设置背景颜色的

     ...

}

 

这样就可以达到想要的效果了。

相关文章
|
6月前
|
C# 数据库 开发者
44.c#:combobox控件
44.c#:combobox控件
79 1
|
C#
WPF中实现多选ComboBox控件
原文:WPF中实现多选ComboBox控件 在WPF中实现带CheckBox的ComboBox控件,让ComboBox控件可以支持多选。 将ComboBox的ItemsSource属性Binding到一个Book的集合, public class Book { ...
3572 0
|
3月前
|
前端开发 测试技术 C#
WPF/C#:在DataGrid中显示选择框
WPF/C#:在DataGrid中显示选择框
56 0
|
5月前
|
索引
详细解读c#ListBox控件
详细解读c#ListBox控件
38 0
|
6月前
|
C# 数据库 虚拟化
43.c#:listbox控件
43.c#:listbox控件
53 1
WPF 点击 Datagrid 中的TextBox 控件获取其所在行的数据
WPF 点击 Datagrid 中的TextBox 控件获取其所在行的数据
|
C#
WPF TextBox自动滚动到最户一行
原文:WPF TextBox自动滚动到最户一行 textBox经常用来显示程序的运行状态或者消息,如何让他自动滚动呢? 在显示消息代码下加一条自动滚动到底部的语句即可:  TextBox1.ScrollToEnd(); (如果要显示垂直滚动条设置VerticalScrollBarVisibility="Auto",如果不显示设置为Hidden) 我用的程序代码如下:   this.
2091 0
|
数据库
利用DropDownList实现下拉
利用DropDownList实现下拉
129 0
利用DropDownList实现下拉
|
C#
WPF 实现 DataGrid/ListView 分页控件
原文:WPF 实现 DataGrid/ListView 分页控件 在WPF中,通常会选用DataGrid/ListView进行数据展示,如果数据量不多,可以直接一个页面显示出来。如果数据量很大,2000条数据,一次性显示在一个页面中,不仅消耗资源,而且用户体验也很糟糕。
1947 0