最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#實(shí)現(xiàn)DataGridView控件行列互換的方法

 更新時(shí)間:2015年08月13日 16:36:49   作者:企鵝  
這篇文章主要介紹了C#實(shí)現(xiàn)DataGridView控件行列互換的方法,涉及C#中DataGridView控件元素遍歷與添加操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

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

該示例程序是一個(gè)Windows窗體應(yīng)用程序,有左右兩個(gè)DataGridView控件:dgvLeft和dgvRight

dgvRight除時(shí)間外的每一行是dgvLeft的一列

private void Form1_Load(object sender, EventArgs e)
{
 //C#中確定控件DataGridView根據(jù)內(nèi)容自動(dòng)調(diào)整列寬長(zhǎng)度的屬性
 //是AutoSizeColumnsMode,將它的值設(shè)置為AllCells時(shí)可以達(dá)到該效果。
 //調(diào)整行每行頭部的寬度(可以更好地顯示出數(shù)字)
 this.dgvLeft.RowHeadersWidth = 50;
 this.dgvRight.RowHeadersWidth = 50;
 //左側(cè)數(shù)據(jù)表
 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;
 //右側(cè)數(shù)據(jù)表,是左側(cè)數(shù)據(jù)表的轉(zhuǎn)置
 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;
}

每一行的行號(hào)可以通過(guò)下面的方法添加

//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();
 }
}

運(yùn)行效果如下圖所示:

希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 淺析C# Dynamic關(guān)鍵字

    淺析C# Dynamic關(guān)鍵字

    這篇文章主要介紹了C# Dynamic關(guān)鍵字的相關(guān)資料,文中講解非常細(xì)致,對(duì)大家學(xué)習(xí)C# Dynamic關(guān)鍵字有所幫助,感興趣的朋友可以了解下
    2020-08-08
  • 測(cè)試stringbuilder運(yùn)行效率示例

    測(cè)試stringbuilder運(yùn)行效率示例

    測(cè)試StringBuilder的運(yùn)行效率,大家參考使用吧
    2013-12-12
  • Unity shader實(shí)現(xiàn)高斯模糊效果

    Unity shader實(shí)現(xiàn)高斯模糊效果

    這篇文章主要為大家詳細(xì)介紹了Unity shader實(shí)現(xiàn)高斯模糊效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • C#多線程學(xué)習(xí)之(六)互斥對(duì)象用法實(shí)例

    C#多線程學(xué)習(xí)之(六)互斥對(duì)象用法實(shí)例

    這篇文章主要介紹了C#多線程學(xué)習(xí)之互斥對(duì)象用法,實(shí)例分析了C#中互斥對(duì)象的使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • 使用C#開(kāi)發(fā)ActiveX控件

    使用C#開(kāi)發(fā)ActiveX控件

    activex控件以前也叫做ole控件,它是微軟ie支持的一種軟件組件或?qū)ο?,可以將其插入到web頁(yè)面中,實(shí)現(xiàn)在瀏覽器端執(zhí)行動(dòng)態(tài)程序功能,以增強(qiáng)瀏覽器端的動(dòng)態(tài)處理能力。通常activex控件都是用c++或vb語(yǔ)言開(kāi)發(fā),本文介紹另一種方式,使用c#語(yǔ)言開(kāi)發(fā)activex控件。
    2017-02-02
  • 基于Kubernetes實(shí)現(xiàn)前后端應(yīng)用的金絲雀發(fā)布(兩種方案)

    基于Kubernetes實(shí)現(xiàn)前后端應(yīng)用的金絲雀發(fā)布(兩種方案)

    這篇文章主要介紹了基于Kubernetes實(shí)現(xiàn)前后端應(yīng)用的金絲雀發(fā)布,文中給大家提到了兩種常用方案,通過(guò)示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2021-12-12
  • Winform讓DataGridView左側(cè)顯示圖片

    Winform讓DataGridView左側(cè)顯示圖片

    本文主要介紹在如何讓DataGridView左側(cè)顯示圖片,這里主要講解重寫(xiě)DataGridView的OnRowPostPaint方法,需要的朋友可以參考下。
    2016-05-05
  • C#實(shí)現(xiàn)txt定位指定行完整實(shí)例

    C#實(shí)現(xiàn)txt定位指定行完整實(shí)例

    這篇文章主要介紹了C#實(shí)現(xiàn)txt定位指定行的方法,涉及C#針對(duì)文本文件進(jìn)行光標(biāo)定位的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-08-08
  • C# 總結(jié)QueueUserWorkItem傳參幾種方式案例詳解

    C# 總結(jié)QueueUserWorkItem傳參幾種方式案例詳解

    這篇文章主要介紹了C# 總結(jié)QueueUserWorkItem傳參幾種方式案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • C#對(duì)Xamarin框架進(jìn)行數(shù)據(jù)綁定

    C#對(duì)Xamarin框架進(jìn)行數(shù)據(jù)綁定

    這篇文章介紹了C#對(duì)Xamarin框架進(jìn)行數(shù)據(jù)綁定,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-01-01

最新評(píng)論

罗定市| 积石山| 辉南县| 搜索| 阜南县| 嘉禾县| 久治县| 汉阴县| 永修县| 吉林市| 南投市| 英超| 砚山县| 怀来县| 乐都县| 双辽市| 偏关县| 汉沽区| 扶风县| 肇州县| 远安县| 南陵县| 莱西市| 泰宁县| 西林县| 濮阳市| 公安县| 响水县| 怀远县| 蛟河市| 河东区| 察隅县| 南靖县| 于都县| 若尔盖县| 富宁县| 永登县| 保山市| 上杭县| 尼玛县| 全州县|