C#中DataGridView操作技巧
本文實例講述了C#中DataGridView操作技巧。分享給大家供大家參考。具體分析如下:
/// <summary>
/// 初始化DataGridView屬性
/// </summary>
/// <param name="dg">要處理的DataGridView</param>
/// <param name="allowUserToAddRows">允許用戶添加行</param>
/// <param name="allowUserToDeleteRows">允許用戶刪除行</param>
/// <param name="rowHeadersVisible">是否顯示包含行標題的列</param>
/// <param name="columnHeadersHeightSizeMode">列標頭高度大小模式</param>
/// <param name="multiSelect">是否多選</param>
/// <param name="readOnly">是否只讀</param>
/// <param name="rowHeadersWidth">列頭寬度</param>
/// <param name="selectionMode">列選擇模式</param>
public virtual void InitSetDataGridViewAttribute(DataGridView dg,
bool allowUserToAddRows,
bool allowUserToDeleteRows,
bool allowUserToResizeRows,
bool rowHeadersVisible,
DataGridViewColumnHeadersHeightSizeMode columnHeadersHeightSizeMode,
bool multiSelect,
bool readOnly,
int rowHeadersWidth,
DataGridViewSelectionMode selectionMode)
{
dg.AllowUserToAddRows = allowUserToAddRows;
dg.AllowUserToDeleteRows = allowUserToDeleteRows;
dg.AllowUserToResizeRows = allowUserToResizeRows;
dg.RowHeadersVisible = rowHeadersVisible;
dg.ColumnHeadersHeightSizeMode = columnHeadersHeightSizeMode;
dg.MultiSelect = multiSelect;
dg.ReadOnly = readOnly;
dg.RowHeadersWidth = rowHeadersWidth;
dg.SelectionMode = selectionMode;
dg.RowStateChanged += dg_RowStateChanged;
}
/// <summary>
/// 初始化DataGridView屬性
/// </summary>
/// <param name="dg">要處理的DataGridView</param>
public virtual void InitSetDataGridViewAttribute(DataGridView dg)
{
InitSetDataGridViewAttribute(dg,
false,
false,
false,
true, DataGridViewColumnHeadersHeightSizeMode.AutoSize,
false,
true,
50,
DataGridViewSelectionMode.FullRowSelect);
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public virtual void dg_RowStateChanged(object sender, DataGridViewRowStateChangedEventArgs e)
{
e.Row.HeaderCell.Value = (e.Row.Index + 1).ToString();
}
/// <summary>
/// DataGridView添加行
/// </summary>
/// <param name="dg">要處理的DataGridView</param>
/// <param name="dr">添加的列</param>
public void DataGridViewAddRows(DataGridView dg, DataGridViewRow dr)
{
dg.Rows.Add(dr);
}
/// <summary>
/// DataGridView行中添加列
/// </summary>
/// <param name="objs">要添加的對象</param>
/// <returns>列</returns>
public DataGridViewRow DataGridViewRowsAddCells(object[] objs)
{
DataGridViewRow row = new DataGridViewRow();
foreach (object obj in objs)
{
DataGridViewTextBoxCell tBoxCell = new DataGridViewTextBoxCell();
tBoxCell.Value = obj;
row.Cells.Add(tBoxCell);
}
return row;
}
/// <summary>
/// DataGridView添加行
/// </summary>
/// <param name="dg">要處理的DataGridView</param>
/// <param name="listObjecArray">添加的對象List</param>
public void DataGridViewAddRows(DataGridView dg, List<object[]> listObjecArray)
{
foreach (object[] objs in listObjecArray)
{
DataGridViewRow dr = DataGridViewRowsAddCells(objs);
DataGridViewAddRows(dg, dr);
}
}
/// <summary>
/// DataGridView添加行
/// </summary>
/// <param name="dg">要處理的DataGridView</param>
/// <param name="objs">添加的對象</param>
public void DataGridViewAddRows(DataGridView dg, object[] objs)
{
DataGridViewRow dr = DataGridViewRowsAddCells(objs);
DataGridViewAddRows(dg, dr);
}
/// <summary>
/// DataGridView列排序
/// </summary>
/// <param name="dg">要排序的DataGridView</param>
/// <param name="dataGridViewColumnIndex">列索引</param>
/// <param name="flag">0:升序排列 1:降序排列</param>
public void DataGridViewSort(DataGridView dg, int dataGridViewColumnIndex, int flag)
{
switch (flag)
{
case 0:
dg.Sort(dg.Columns[dataGridViewColumnIndex], ListSortDirection.Ascending);
break;
case 1:
dg.Sort(dg.Columns[dataGridViewColumnIndex], ListSortDirection.Descending);
break;
default:
break;
}
}
#endregion
希望本文所述對大家的C#程序設計有所幫助。
相關文章
c# 動態(tài)加載dll文件,并實現(xiàn)調(diào)用其中的簡單方法
下面小編就為大家?guī)硪黄猚# 動態(tài)加載dll文件,并實現(xiàn)調(diào)用其中的簡單方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-01-01Visual Studio 2019配置vue項目的圖文教程詳解
這篇文章主要介紹了Visual Studio 2019配置vue項目的教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作,具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03Winform之TextBox輸入日期格式驗證yyyy-mm-dd
Winform之TextBox輸入日期格式驗證yyyy-mm-dd的實例與正則表達式,需要的朋友可以參考一下2013-02-02