winform控件之combobox,datagridview(代码片段)

lifedecideshappiness lifedecideshappiness     2022-10-22     295

关键词:

1.代码结构截图

技术分享图片

2.核心代码
using System;
using System.Data;
using System.Drawing;
using System.Windows.Forms;

namespace WinFormComboBoxDemos

    /// <summary>
    ///     WinForm程序:ComboBox和DataGridView使用方法
    ///     LDH @ 2018-3-6
    /// </summary>
    public partial class FrmMain : Form
    
        public FrmMain()
        
            InitializeComponent();
        

        private void FrmMain_Load(object sender, EventArgs e)
        
            BindData();
        

        private void BindData()
        
            BindComboBox();
            BindFonts();
            BindPeople();
            BindDataGridView();
        

        /// <summary>
        ///     绑定DataGridView
        /// </summary>
        private void BindDataGridView()
        
            //  绑定数据源
            DataGridViewHelper.BindDataGridView(GetDataTable(), dataGridView1);

            //  设置样式
            DataGridViewHelper.SetStyleForDataGridView(dataGridView1, Color.CadetBlue, Color.White, Color.LightGray,
                Color.FromArgb(254, 254, 254), Color.FromArgb(233, 249, 248));
        

        /// <summary>
        ///     以DataTable形式绑定下拉列表
        /// </summary>
        private void BindPeople()
        
            //  初始化
            cmbPeople.Items.Clear();
            cmbPeople.Enabled = true;
            cmbReportFont.DropDownStyle = ComboBoxStyle.DropDownList; //  设置样式,DropDownList样式,我们不能修改文本

            cmbPeople.DataSource = GetDataTable();
            cmbPeople.DisplayMember = "Name";
            cmbPeople.ValueMember = "Id";

            //  设置默认选中项
            cmbPeople.SelectedIndex = 0;
        

        /// <summary>
        ///     绑定字体
        /// </summary>
        private void BindFonts()
        
            //  初始化
            cmbReportFont.Items.Clear();
            cmbReportFont.Enabled = true;
            cmbReportFont.DropDownStyle = ComboBoxStyle.DropDownList; //  设置样式,DropDownList样式,我们不能修改文本

            foreach (var f in FontFamily.Families)
            
                cmbReportFont.Items.Add(f.Name);
            

            //  默认选中项
            cmbReportFont.SelectedItem = @"微软雅黑";
        

        /// <summary>
        ///     绑定下拉列表
        /// </summary>
        private void BindComboBox()
        
            cmbConnectionString.Items.Clear();
            cmbConnectionString.Enabled = true;
            cmbConnectionString.DropDownStyle = ComboBoxStyle.DropDown; // 设置样式,DropDown样式,我们可以修改文本

            cmbConnectionString.Items.AddRange(new object[]
            
                "Provider=MSDAORA; Data Source=ORACLE8i7; Persist Security Info=False; Integrated Security=yes",
                "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\\\\Access.mdb",
                "Data Source=.; Initial Catalog=TestDB; User ID=sa password=123456"
            );
        

        /// <summary>
        ///     手动创建 DataTable
        /// </summary>
        /// <returns></returns>
        public static DataTable GetDataTable()
        
            var dt = new DataTable();

            // Columns
            dt.Columns.AddRange(new[]
            
                new DataColumn("Id", typeof (int)),
                new DataColumn("Name", typeof (string)),
                new DataColumn("Age", typeof (int)),
                new DataColumn("Address", typeof (string)),
                new DataColumn("CarNo", typeof (string)),
                new DataColumn("Remark", typeof (string))
            );

            // Data Rows
            var row = dt.NewRow();
            row["Id"] = 1;
            row["Name"] = "Jinger Yan";
            row["Age"] = 25;
            row["Address"] = "江苏南京";
            row["CarNo"] = "苏A88888";
            row["Remark"] = "A————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 2;
            row["Name"] = "Sam Lu";
            row["Age"] = 50;
            row["Address"] = "江苏无锡";
            row["CarNo"] = "苏B88888";
            row["Remark"] = "B————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 3;
            row["Name"] = "Jason Li";
            row["Age"] = 28;
            row["Address"] = "江苏徐州";
            row["CarNo"] = "苏C88888";
            row["Remark"] = "C————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 4;
            row["Name"] = "Tom Wang";
            row["Age"] = 18;
            row["Address"] = "江苏常州";
            row["CarNo"] = "苏D88888";
            row["Remark"] = "D————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 5;
            row["Name"] = "Gloden Jin";
            row["Age"] = 28;
            row["Address"] = "江苏苏州";
            row["CarNo"] = "苏E88888";
            row["Remark"] = "E————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 6;
            row["Name"] = "Jerry Zhao";
            row["Age"] = 36;
            row["Address"] = "江苏南通";
            row["CarNo"] = "苏F88888";
            row["Remark"] = "F————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 7;
            row["Name"] = "Lily Zhou";
            row["Age"] = 53;
            row["Address"] = "江苏连云港";
            row["CarNo"] = "苏G88888";
            row["Remark"] = "G————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 8;
            row["Name"] = "David Wu";
            row["Age"] = 18;
            row["Address"] = "江苏淮安";
            row["CarNo"] = "苏H88888";
            row["Remark"] = "H————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 9;
            row["Name"] = "Dick Chen";
            row["Age"] = 19;
            row["Address"] = "江苏盐城";
            row["CarNo"] = "苏J88888";
            row["Remark"] = "J————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 10;
            row["Name"] = "Sunny Yan";
            row["Age"] = 26;
            row["Address"] = "江苏扬州";
            row["CarNo"] = "苏K88888";
            row["Remark"] = "K————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 11;
            row["Name"] = "Rainy Wang";
            row["Age"] = 52;
            row["Address"] = "江苏镇江";
            row["CarNo"] = "苏L88888";
            row["Remark"] = "L————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 12;
            row["Name"] = "Scott Xu";
            row["Age"] = 69;
            row["Address"] = "江苏泰州";
            row["CarNo"] = "苏M88888";
            row["Remark"] = "M————————————————————————————————————";
            dt.Rows.Add(row);

            row = dt.NewRow();
            row["Id"] = 13;
            row["Name"] = "Richard Liu";
            row["Age"] = 44;
            row["Address"] = "江苏宿迁";
            row["CarNo"] = "苏N88888";
            row["Remark"] = "N————————————————————————————————————";
            dt.Rows.Add(row);

            return dt;
        
    
3.运行效果录像

技术分享图片

winform中使用combobox控件。

winForm中使用ComBoBOX控件,编辑了几个值:请选择、类别1、类别2;加载页面时设置显示"请选择",点击提交时ComBoBOX中的值没有值,求解决。FormLoad事件里添加ComboBox.SelectIndex=0;点击提交的处理后添加ComboBox.SelectIndex=-1;ComboBox... 查看详情

winform控件大全,要详细的.

...,文本框,长度,errorprovider组件,方便,快捷C#WinForm开发系列–ComboBoxwinform中的AutoComplete自定义控件c#,winform,combobox联动c#+winform+combobox+动态生成控件,根据选择的内容WinForm下ComboBox添加项与设定预选项在.Net中将Enum绑定到ComboBox控件(思想... 查看详情

winform回顾[2]combobox控件

ComboBox重要属性:【DropDownStyle】获取或设置指定组合框样式的值。下面仍然通过一个小程序来回顾: 代码如下:usingSystem;usingSystem.Windows.Forms;namespace日期选择器{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}//在程序加载... 查看详情

winform控件combobox数据绑定

ComboBox下拉菜单控件,在数据库内的ComboBox应用的表进行修改时,如果是用的普通方法,显示数据一个方法,添加数据一个方法这样会导致程序后期维护难度增加,在这里使用数据绑定来让ComboBox数据实现根据数据库对应表数据显示,降低... 查看详情

如何将绑定连接到(Winform)ComboBox 控件以从绑定源获取/设置控件中的选择?

】如何将绑定连接到(Winform)ComboBox控件以从绑定源获取/设置控件中的选择?【英文标题】:HowdoIconnectabindingtoa(Winform)ComboBoxcontroltoget/settheselectioninthecontrolfromthebindingsource?【发布时间】:2021-09-2006:13:34【问题描述】:我已经深... 查看详情

winform公共控件

... Visible-是否隐藏2、CheckBox、CheckListBox-复选框复选框组3、ComboBox:下拉列表框 1、数据填进去 可以在后台将要填进去的内容放到Items集合中去 comboBox1.Items.Add() 2、如何取到选中的数据 comboBox1.SelectedItem.ToStri 查看详情

winform控件

一:ComBobox下拉框获取当前选中的itemprivatevoidChooseProvinceBox_SelectedValueChanged(objectsender,EventArgse) {    varcomboBox=senderasComboBox;stringtext=comboBox.SelectedItem.ToString(); }当然也可以直接通过下拉框的名称+点直接将窗 查看详情

winform开发中如何将数据库字段绑定到combobox控件

...的问题记录下来。Winform开发中如何将数据库字段绑定到ComboBox控件1.问题引入在开发中用到了ComboBox控件,也就是实现下拉选择功能的控件。但是选项的数据并不是固定的,而是要根据数据库中的某一列进行动态的调整。 2.解... 查看详情

c#winform编程自定义combobx控件,将treeview控件嵌入combobox中

不能简单的嵌进去。你可以在打开下拉选择框的时候,让comboBox不显示下拉类别,你动态的生成一个TreeView控件,放到正确的位置,使其看上去像是ComboBox的下拉列表。当这个TreeView失去焦点时自动将其隐藏。上面的方法应该可以... 查看详情

c#中winform中combobox中文本居中

...是该怎么写,这个我在百度也能查到啊参考技术Awinform中combobox中文本是不能居中的微软封装的这个控件不支持。你可以自己写一个控件,添加上你需要的一些的功能。 参考技术B不能微软封装的这个控件不支持的。你可以自己写... 查看详情

winform中如何得到combobox控件lord加载后用户选择后返回其选中的索引值

我需要这个索引值存到数据库combobox中的选项都是我从数据库中Lord加载的要详细点的参考技术A在combobox的selectchange时间中就可以了 参考技术Bintindex=comboBox1.SelectedIndex;本回答被提问者采纳 参考技术Ccombobox.selectindex; 查看详情

winform中弹出对话框,并在对话框中添加combobox控件

winform中弹出对话框,并在对话框中添加ComboBox控件,并将用户选择的值返回。假设你的winform类名是form1,你在你的工程里新加一个叫form2的画面,放上你要的combobox等控件,实现你需要的显示功能。然后再form1里需要弹出form2的地... 查看详情

winform多窗体间操作,combobox下拉菜单控件

1.通过操作一个窗体打开另一个窗体已有窗体为Form1.Form1中有一个按钮,对该按钮编写点击事件:Form2f2=newForm2();f2.Show();通过这段代码来打开Form2.在实际应用中会出现代开Form2后需要Form1隐藏的情况,此时可以加入代码:this.Hide();来实现... 查看详情

2017-4-26winform公共控件2

公共控件2:ListBox: (和ComboBox的区别:ComboBox是一堆里面可以选一个,ListBox是一堆里面可以选一堆)SelectionMode---------------------------指示列表框将是单项选择、多项选择还是不可选择取值:foreach(stringsinlistBox1.SelectedItems){ &nb... 查看详情

c#winform的combobox控件下拉框怎样做一个多选?请大神指教!麻烦您给出相应代码!

...术A你可以参考:http://www.cnblogs.com/greatverve/archive/2011/07/19/ComboBox-Multi-Pic.html本回答被提问者采纳 参考技术B我建议是用textbox+dataGridView,行前面加checkbox复选 参考技术CTextbox+Button+Control自己做一个吧 参考技术D这个需要你自己重写co... 查看详情

winform/timer控件/权限设置/三级联动

...orm1:Form{publicForm1(){InitializeComponent();//调查询方法Bind("0001",comboBox1);Bind(comboBox1. 查看详情

请教c#winform中combox控件?

...是空,在选择其他选项后还可以选择空选项,谢谢!另:comboBox1.SelectedIndex=-1;这个是可以,但是选择完后就不能再选空了如果用comboBox1.DataSource这种方式绑定,只能在数据库添加一个空项,要不然可以用comboBox1.Items.Add();这样循环... 查看详情

winform控件大全

...件9、CheckBox(复选框)控件10、ListBox(列表框)控件11、ComboBox(组合框)控件12、CheckedListBox(复选列表框 查看详情