zoukankan      html  css  js  c++  java
  • DataGridView中的DataGridViewComboBoxColumn使用浅析

    小项目的感悟学习一下:

    窗体的Load事件:

    private void Form1_Load(object sender, EventArgs e)
    {
    DataGridViewTextBoxColumn column = new DataGridViewTextBoxColumn();
    column.Name = "ID";
    column.DataPropertyName = "id";//对应数据源的字段
    column.HeaderText = "ID";
    column.Width = 80;
    this.dataGridView1.Columns.Add(column);

    List<string> ListData = new List<string> { "张三", "里斯", "王六" };
    DataGridViewComboBoxColumn column1 = new DataGridViewComboBoxColumn();
    column1.Name = "Name";
    column1.DataPropertyName = "Name";//对应数据源的字段
    column1.HeaderText = "姓名";
    column1.Width = 80;
    this.dataGridView1.Columns.Add(column1);
    column1.DataSource = ListData; //这里需要设置一下combox的itemsource,以便combox根据数据库中对应的值自动显示信息
    //column1.DisplayMember = "Name";
    //column1.ValueMember = "Name";

    //绑定数据源
    dataGridView1.DataSource = CreateTable();

    }

    private DataTable CreateTable()
    {
    DataTable dt = new DataTable();
    DataColumn column = new DataColumn();
    column.DataType = System.Type.GetType("System.Int32");
    column.ColumnName = "id";
    dt.Columns.Add(column);
    column = new DataColumn();
    column.DataType = Type.GetType("System.String");
    column.ColumnName = "Name";
    dt.Columns.Add(column);
    DataRow row = dt.NewRow();
    row["id"] = 0;
    row["Name"] = "张三";
    dt.Rows.Add(row);
    return dt;

    }

    当想修改Combox列的数据时,或是想通过Combox的改变做文章的要用到dataGridView1_EditingControlShowing这个事件,即编辑dataGriview中的数据就会触发该事件

    private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
    {
    ComboBox combo = e.Control as ComboBox;
    if (combo != null)
    {
    combo.SelectedIndexChanged +=
    new EventHandler(ComboBox_SelectedIndexChanged);
    }

    }

    private void ComboBox_SelectedIndexChanged(object sender, EventArgs e)
    {
    ComboBox combo = sender as ComboBox;
    string selectedItem = combo.Text;//拿到选择后的值

    }

    时间有限,写的有些匆忙!

    一览众山小
  • 相关阅读:
    读取 classes下的配置文件
    java中Class.getResource用法(用于配置文件的读取)
    windows 中 到底是用的哪个java.exe??? 删除了PATH变量的Java设置还是可以运行java.exe windows/system32
    mysql中null与“空值”的坑
    innodb架构理解
    mysql5.7性能提升一百倍调优宝典
    servlet 3.0笔记之servlet的动态注册
    前端性能优化建议
    了解CSRF攻击原理和预防
    vue的热更新配置
  • 原文地址:https://www.cnblogs.com/ZLGBloge/p/4415155.html
Copyright © 2011-2022 走看看