C#数组在DataGridView控件显示

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#数组在DataGridView控件显示相关的知识,希望对你有一定的参考价值。

一个数组 List<string>A;每个元素都有A[0]=("a","b","c");怎么在DataGridView控件分别显示在3列中,每个元素都是一行,这个怎么做,求高手

建议:
将List<String>A 中的String换成一个你定义的对象,对象有三个属性,让他们=a,b,c
然后再DataGridView的没个列绑定一下数据,
直接DataGridView1.DataSource= list1;追问

其实我就是定义的一个对象构造函数,这个绑定怎么绑定

追答

用你的对象的字段名,绑定在DataGridView的列中
在DataGridView右上角的小三角中,点击编辑列,
找到叫做DataPropertyName的属性,在后写上字段名字

追问

这个绑定是A[0],A[1]的每个a,b,c都要绑定吗?是不是用个for循环就行了。

追答

...不用。
就去DataGridView的列属性里面找就行了。。

追问

晕...还是不懂,就不能举个例子么,我是一丁点不了解这个控件

参考技术A int index=this.dataGridView1.Rows.Add();
this.dataGridView1.Rows[index].Cells[0].Value = A[0][1];
this.dataGridView1.Rows[index].Cells[1].Value = A[0][2];
this.dataGridView1.Rows[index].Cells[2].Value = A[0][3];
index=this.dataGridView1.Rows.Add();
this.dataGridView1.Rows[index].Cells[0].Value = A[1][1];
this.dataGridView1.Rows[index].Cells[1].Value = A[1][2];
this.dataGridView1.Rows[index].Cells[2].Value = A[1][3];
index=this.dataGridView1.Rows.Add();
this.dataGridView1.Rows[index].Cells[0].Value = A[2][1];
this.dataGridView1.Rows[index].Cells[1].Value = A[2][2];
this.dataGridView1.Rows[index].Cells[2].Value = A[2][3];
参考技术B 使用datagridview.items.add循环添加吧追问

能说具体点么,怎么添加,怎么显示 这个控件我还没学

追答

请自行百度datagridview.items.add

C# 选中 DataGridView 控件中的行时显示不同的颜色

   可以利用 DataGridView 控件的 SelectionMode、ReadOnly 和 SelectionBackColor 属性实现当选中DataGridView控件中的行时显示不同的颜色。

          SelectionMode属性用于设置如何选择 DataGridView 的单元格。

       语法如下:

       public DataGridViewSelectionMode SelectionMode{get;set;}

      属性值:DataGridViewSelectionMode 值之一,默认为 RowHeaderSelect。        DataGridViewSelectionMode 枚举值及说明如表 1 所示。

表1   DataGridViewSelectionMode 枚举值及说明

     说明 

     在更改SelectionMode 届性的值时,会清除当前的选择,所以在更改行的颜色时,要注意更改和选中的顺序。

        ReadOnly 属性用于设置是否可以编辑 DataGridView 控件的单元格。

     语法如下:

     public bool ReadOnly {get; set; }

     属性值:如果用户不能编辑 DataGridView 控件的单元格,则为 true;否则为 false。默认为 false.

    【例1】 禁止用户编辑 DataGridView 控件的单元格。

     代码如下:

     dataGridView1.ReadOnly.=true;

        SelectionBackColor 属性用于设置 DataGridView 单元格在被选定时的背景色。

     语法如下:

     public Color SelectionBackColor ({get; set;}

     属性值:Color,它表示选定单元格的背景色,默认为 Empty。

     SelectionBackColor 属性包含在 DataGridViewCellStyle 类中,所以调用此属性之前要调用 DataGridViewCellIStyle 属性。

    【例2】创建一个 Windows 应用程序,向窗体中添加一个 DataGridView 控件,用于显示 tb_emp表中的所有数据。然后通过 DataGridView 控件的 SelectionMode、ReadOnly 和 SelectionBackColor 属性实现选中某一行时,行的背景变色.

      代码如下:

SqlConnection conn;         //声明 SqlConnection 变量 
private void Form1_Load(object sender,EventArgs e)
{
//实例化 SqlConnection 变量 conn,连接数据库
conn = new SqlConnection("server=.;database=db_16;uid=sa;pwd=");
//实例化 SqlDataAdapter 对象
SqlDataAdapter sda = new SqlDataAdapter("select*from tb_emp",conn;
//实例化 DataSet 对象
DataSet ds = new DataSet();
//使用 SqlDataAdapter 对象的 Fill 方法填充 DataSet 
sda.Fill(ds);
//设置 dataGridView1控件的数据源
dataGridView1.DataSource = ds.Tables[0];
//设置 SelectionMode 属性为 FullRowSelect,使控件能够整行选择
dataGridView1.SelectionMode= DataGridViewSelectionMode.FullRowSelect;
//设置 dataGridView1 控件的 ReadOnly 属性,使其为只读
dataGridView1.ReadOnly =true;
//设置 dataGridView1控件的 DefaultCellStyle.SelectionBackColor 属性,使其选择行为黄绿色 
dataGridView1.DefaultCellStyle.SelectionBackColor= Color.YellowGreen;
}

程序的运行结果如图1所示。

图1    选中某行时显示不同的颜色

END -



关注小编不迷路呦~

以上是关于C#数组在DataGridView控件显示的主要内容,如果未能解决你的问题,请参考以下文章

C# winform datagridview如何计算统计

如何使用 C# 在 datagridview 控件中显示某些表架构列?

C# 在 DataGridView 上显示我的自定义控件,即使不编辑

C# 选中 DataGridView 控件中的行时显示不同的颜色

C# DataGridView控件动态添加新行

C#中能不能用datagridview显示文件的内容?不用数据库