在Visual Studio 2005的DataGridView控件中加入ComboBox下拉列表框的实现(C#)

   虽然在Visual Studio中 DataGridView控件的DataGridViewComboBoxColumn可以实现下拉列表框,但这样的列会在整列中都显示下拉列表框,不太美观,而且还要用代码实现数据绑定。本文介绍一种只在当前编辑单元格中显示下拉列表框的方法,供大家参考。  首先新建一个Windows应用程序,将主窗体重命名为MainForm,在MainForm中加入一个Data
摘要由CSDN通过智能技术生成

   虽然在Visual Studio中 DataGridView控件的DataGridViewComboBoxColumn可以实现下拉列表框,但这样的列会在整列中都显示下拉列表框,不太美观,而且还要用代码实现数据绑定。本文介绍一种只在当前编辑单元格中显示下拉列表框的方法,供大家参考。

  首先新建一个Windows应用程序,将主窗体重命名为MainForm,在MainForm中加入一个DataGridView控件,命名为dgv_User。如下图所示:

  打开窗体代码窗口,在代码窗口中声明一个ComboBox的控件

//  定义下拉列表框
private  ComboBox cmb_Temp  =   new  ComboBox();

  我们要绑定的下拉列表框的功能是选择性别,添加如下绑定性别下拉列表框的方法

///   <summary>
///  绑定性别下拉列表框
///   </summary>
private   void  BindSex()
{
    DataTable dtSex 
=   new  DataTable();
    dtSex.Columns.Add(
" Value " );
    dtSex.Columns.Add(
" Name " );
    DataRow drSex;
    drSex 
=  dtSex.NewRow();
    drSex[
0 =   " 1 " ;
    drSex[
1 =   " " ;
    dtSex.Rows.Add(drSex);
    drSex 
=  dtSex.NewRow();
    drSex[
0 =   " 0 " ;
    drSex[
1 =   " " ;
    dtSex.Rows.Add(drSex);
    cmb_Temp.ValueMember 
=   " Value " ;
    cmb_Temp.DisplayMember 
=   " Name " ;
    cmb_Temp.DataSource 
=  dtSex;
    cmb_Temp.DropDownStyle 
=  ComboBoxStyle.DropDownList;
}

  通常情况下我们都是从数据库中获取数据表(或者数据集),然后绑定到DataGridView中的,这里我们为了避免连接数据库,手中构造一个数据库表,代码如下:

private   void  BindData()
{
    DataTable dtData 
=   new  DataTable();
    dtData.Columns.Add(
" ID " );
    dtData.Columns.Add(
" Name " );
    dtData.Columns.Add(
" Sex " );
    DataRow drData;
    drData 
=  dtData.NewRow();
    drData[
0 =   1 ;
    drData[
1 =   " 张三 " ;
    drData[
2 =   " 1 " ;
    dtData.Rows.Add(drData);
    drData 
=  dtData.NewRow();
    drData[
0 =   2 ;
    drData[
1 =   " 李四 " ;
    drData[
2 =   " 1 " ;
    dtData.Rows.Add(drData);
    drData 
=  dtData.NewRow();
    drData[
0 =   3 ;
    drData[
1 =   " 王五 " ;
    drData[
2 =   " 1 " ;
    dtData.Rows.Add(drData);
    drData 
=  dtData.NewRow();
    drData[
0 =   4 ;
    drData[
1 =   " 小芳 " ;
    drData[
2 =   " 0 " ;
    dtData.Rows.Add(drData);
    drData 
=  dtData.NewRow();
    drData[
  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值