国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#實現DataGridView控件行列互換的方法

2020-01-24 01:32:39
字體:
來源:轉載
供稿:網友

本文實例講述了C#實現DataGridView控件行列互換的方法。分享給大家供大家參考。具體如下:

該示例程序是一個Windows窗體應用程序,有左右兩個DataGridView控件:dgvLeft和dgvRight

dgvRight除時間外的每一行是dgvLeft的一列

private void Form1_Load(object sender, EventArgs e){ //C#中確定控件DataGridView根據內容自動調整列寬長度的屬性 //是AutoSizeColumnsMode,將它的值設置為AllCells時可以達到該效果。 //調整行每行頭部的寬度(可以更好地顯示出數字) this.dgvLeft.RowHeadersWidth = 50; this.dgvRight.RowHeadersWidth = 50; //左側數據表 DataTable dtLeft = new DataTable(); dtLeft.Columns.Add("C1"); dtLeft.Columns.Add("C2"); dtLeft.Columns.Add("C3"); dtLeft.Columns.Add("TIME"); dtLeft.Rows.Add("1-1", "1-2", "1-3", DateTime.Now.ToShortTimeString()); dtLeft.Rows.Add("2-1", "2-2", "2-3", DateTime.Now.ToShortTimeString()); dtLeft.Rows.Add("3-1", "3-2", "3-3", DateTime.Now.ToShortTimeString()); dtLeft.Rows.Add("4-1", "4-2", "4-3", DateTime.Now.ToShortTimeString()); dtLeft.Rows.Add("5-1", "5-2", "5-3", DateTime.Now.ToShortTimeString()); dtLeft.Rows.Add("6-1", "6-2", "6-3", DateTime.Now.ToShortTimeString()); dgvLeft.DataSource = dtLeft; //右側數據表,是左側數據表的轉置 DataTable dtRight = new DataTable(); for (int i = 0; i < dtLeft.Rows.Count; i++) {  dtRight.Columns.Add("C" + i); } dtRight.Columns.Add("TIME"); for (int i = 0; i < dtLeft.Columns.Count - 1; i++) {  object[] obj = new object[dtLeft.Rows.Count + 1];  for (int j = 0; j < dtLeft.Rows.Count; j++)  {   obj[j] = dtLeft.Rows[j][i];  }  obj[obj.Length - 1] = DateTime.Now.ToShortTimeString();  dtRight.Rows.Add(obj); } dgvRight.DataSource = dtRight;}

每一行的行號可以通過下面的方法添加

//DataGridView 控件 dgvLeft 的 RowsAdded 事件private void dgvLeft_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e){ for (int i = 0; i < dgvLeft.Rows.Count; i++) {  this.dgvLeft.Rows[i].HeaderCell.Style.Alignment =    DataGridViewContentAlignment.MiddleRight;  this.dgvLeft.Rows[i].HeaderCell.Value = i.ToString(); }}//DataGridView 控件 dgvLeft 的 RowsRemoved 事件private void dgvLeft_RowsRemoved(object sender, DataGridViewRowsRemovedEventArgs e){ for (int i = 0; i < dgvLeft.Rows.Count; i++) {  this.dgvLeft.Rows[i].HeaderCell.Style.Alignment =   DataGridViewContentAlignment.MiddleRight;  this.dgvLeft.Rows[i].HeaderCell.Value = i.ToString(); }}//DataGridView 控件 dgvRight 的 RowsAdded 事件private void dgvRight_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e){ for (int i = 0; i < dgvRight.Rows.Count; i++) {  this.dgvRight.Rows[i].HeaderCell.Style.Alignment =   DataGridViewContentAlignment.MiddleRight;  this.dgvRight.Rows[i].HeaderCell.Value = i.ToString(); }}//DataGridView 控件 dgvRight 的 RowsRemoved 事件private void dgvRight_RowsRemoved(object sender, DataGridViewRowsRemovedEventArgs e){ for (int i = 0; i < dgvRight.Rows.Count; i++) {  this.dgvRight.Rows[i].HeaderCell.Style.Alignment =    DataGridViewContentAlignment.MiddleRight;  this.dgvRight.Rows[i].HeaderCell.Value = i.ToString(); }}

運行效果如下圖所示:

希望本文所述對大家的C#程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 灯塔市| 广昌县| 小金县| 嘉定区| 荆州市| 天等县| 东至县| 拉孜县| 宝山区| 喀喇沁旗| 开阳县| 罗城| 海淀区| 普洱| 五原县| 唐山市| 曲麻莱县| 大关县| 荣昌县| 乐安县| 武川县| 丹巴县| 博湖县| 三河市| 大邑县| 延长县| 台前县| 雷山县| 枞阳县| 郯城县| 岳西县| 鲜城| 三原县| 揭西县| 凯里市| 迁西县| 西盟| 牟定县| 威远县| 梁山县| 康定县|