DataGridView控件用法合集(一)

前端之家收集整理的这篇文章主要介绍了DataGridView控件用法合集(一)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
近期将DataGridView常用的一些用法做了一个整理。为防止页面过长,现分批贴出来,此为第一部分。
1. DataGridView当前的单元格属性取得、变更
2. DataGridView编辑属性
3. DataGridView最下面一列新追加行非表示
4. DataGridView判断当前选中行是否为新追加的行
5. DataGridView删除行可否设定
6. DataGridView行列不表示和删除

1.当前的单元格属性取得、变更

[VB.NET]

'現在のセルの値を表示

Console.WriteLine(DataGridView1.CurrentCell.Value)

'現在のセルの列インデックスを表示

Console.WriteLine(DataGridView1.CurrentCell.ColumnIndex)

'現在のセルの行インデックスを表示

Console.WriteLine(DataGridView1.CurrentCell.RowIndex)

'(0,0)を現在のセルにする

DataGridView1.CurrentCell = DataGridView1(0,0)

[C#]

//現在のセルの値を表示

Console.WriteLine(DataGridView1.CurrentCell.Value);

//現在のセルの列インデックスを表示

Console.WriteLine(DataGridView1.CurrentCell.ColumnIndex);

//現在のセルの行インデックスを表示

Console.WriteLine(DataGridView1.CurrentCell.RowIndex);

//(0,0)を現在のセルにする

DataGridView1.CurrentCell = DataGridView1[0,0];

2.DataGridView编辑属性

全部单元格编辑属性

[VB.NET]

'DataGridView1のセルを読み取り専用にする

DataGridView1.ReadOnly = True

[C#]

//DataGridView1のセルを読み取り専用にする

DataGridView1.ReadOnly = true;

指定行列单元格编辑属性

[VB.NET]

'DataGridView1の2番目の列を読み取り専用にする

DataGridView1.Columns(1).ReadOnly = True

'DataGridView1の3番目の行を読み取り専用にする

DataGridView1.Rows(2).ReadOnly = True

'DataGridView1の(0,0)のセルを読み取り専用にする

DataGridView1(0,0).ReadOnly = True

[C#]

//DataGridView1の2番目の列を読み取り専用にする

DataGridView1.Columns[1].ReadOnly = true;

//DataGridView1の3番目の行を読み取り専用にする

DataGridView1.Rows[2].ReadOnly = true;

//DataGridView1の(0,0)のセルを読み取り専用にする

DataGridView1[0,0].ReadOnly = true;

根据条件判断单元格的编辑属性

下例中column2的值是True的时候,Column1设为可编辑

[VB.NET]

'CellBeginEditイベントハンドラ

Private Sub DataGridView1_CellBeginEdit(ByVal sender As Object,_

ByVal e As DataGridViewCellCancelEventArgs) _

Handles DataGridView1.CellBeginEdit

Dim dgv As DataGridView = CType(sender,DataGridView)

'編集できるか判断する

If dgv.Columns(e.ColumnIndex).Name = "Column1" AndAlso _

Not CBool(dgv("Column2",e.RowIndex).Value) Then

'編集できないようにする

e.Cancel = True

End If

End Sub

[C#]

//CellBeginEditイベントハンドラ

private void DataGridView1_CellBeginEdit(object sender,

DataGridViewCellCancelEventArgs e)

{

DataGridView dgv = (DataGridView)sender;

//編集できるか判断する

if (dgv.Columns[e.ColumnIndex].Name == "Column1" &&

!(bool)dgv["Column2",e.RowIndex].Value)

{

//編集できないようにする

e.Cancel = true;

}

}

3.DataGridView最下面一列新追加行非表示

[VB.NET]

'DataGridView1にユーザーが新しい行を追加できないようにする

DataGridView1.AllowUserToAddRows = False

[C#]

//DataGridView1にユーザーが新しい行を追加できないようにする

DataGridView1.AllowUserToAddRows = false;

4.判断当前选中行是否为新追加的行

[VB.NET]

If DataGridView1.CurrentRow.IsNewRow Then

Console.WriteLine("現在のセルがある行は、新しい行です。")

Else

Console.WriteLine("現在のセルがある行は、新しい行ではありません。")

End If

[C#]

if (DataGridView1.CurrentRow.IsNewRow)

Console.WriteLine("現在のセルがある行は、新しい行です。");

else

Console.WriteLine("現在のセルがある行は、新しい行ではありません。");

5. DataGridView删除行可否设定

[VB.NET]

'DataGridView1の行をユーザーが削除できないようにする

DataGridView1.AllowUserToDeleteRows = False

[C#]

//DataGridView1の行をユーザーが削除できないようにする

DataGridView1.AllowUserToDeleteRows = false;

根据条件判断当前行是否要删除

[VB.NET]

'DataGridView1のUserDeletingRowイベントハンドラ

Private Sub DataGridView1_UserDeletingRow(ByVal sender As Object,_

ByVal e As DataGridViewRowCancelEventArgs) _

Handles DataGridView1.UserDeletingRow

'削除するかユーザーに確認する

If MessageBox.Show("この列を削除しますか?","削除の確認",_

MessageBoxButtons.OKCancel,MessageBoxIcon.Question) <> _

Windows.Forms.DialogResult.OK Then

e.Cancel = True

End If

End Sub

[C#]

//DataGridView1のUserDeletingRowイベントハンドラ

private void DataGridView1_UserDeletingRow(

object sender,DataGridViewRowCancelEventArgs e)

{

//削除するかユーザーに確認する

if (MessageBox.Show("この列を削除しますか?",

"削除の確認",

MessageBoxButtons.OKCancel,

MessageBoxIcon.Question) != DialogResult.OK)

{

e.Cancel = true;

}

}

6. DataGridView行列不表示和删除

行列不表示

[VB.NET]

'DataGridView1のはじめの列を非表示にする

DataGridView1.Columns(0).Visible = False

'DataGridView1のはじめの行を非表示にする

DataGridView1.Rows(0).Visible = False

[C#]

//DataGridView1のはじめの列を非表示にする

DataGridView1.Columns[0].Visible = false;

//DataGridView1のはじめの行を非表示にする

DataGridView1.Rows[0].Visible = false;

行列表头部分不表示

[VB.NET]

'列ヘッダーを非表示にする

DataGridView1.ColumnHeadersVisible = False

'行ヘッダーを非表示にする

DataGridView1.RowHeadersVisible = False

[C#]

//列ヘッダーを非表示にする

DataGridView1.ColumnHeadersVisible = false;

//行ヘッダーを非表示にする

DataGridView1.RowHeadersVisible = false;

指定行列删除

[VB.NET]

'"Column1"を削除する

DataGridView1.Columns.Remove("Column1")

'はじめの列を削除する

DataGridView1.Columns.RemoveAt(0)

'はじめの行を削除する

DataGridView1.Rows.RemoveAt(0)

[C#]

//"Column1"を削除する

DataGridView1.Columns.Remove("Column1");

//はじめの列を削除する

DataGridView1.Columns.RemoveAt(0);

//はじめの行を削除する

DataGridView1.Rows.RemoveAt(0);

选择的行列删除(多行列)

[VB.NET]

'DataGridView1で選択されているすべての行を削除する

Dim r As DataGridViewRow

For Each r In DataGridView1.SelectedRows

If Not r.IsNewRow Then

DataGridView1.Rows.Remove(r)

End If

Next r

[C#]

//DataGridView1で選択されているすべての行を削除する

foreach (DataGridViewRow r in DataGridView1.SelectedRows)

{

if (!r.IsNewRow)

{

DataGridView1.Rows.Remove(r);

}

}

猜你在找的VB相关文章