13. DataGridView指定单元格是否表示
14. DataGridView表头部单元格取得
15. DataGridView表头部单元格文字列设定
16. DataGridView选择的部分拷贝至剪贴板
17.DataGridView粘贴
18. DataGridView单元格上ToolTip表示设定(鼠标移动到相应单元格上时,弹出说明信息)
13. DataGridView指定单元格是否表示
[VB.NET]
If Not DataGridView1(0, 0).Displayed AndAlso _
DataGridView1(0, 0).Visible Then
DataGridView1.CurrentCell = DataGridView1(0, 0)
End If
14. DataGridView表头部单元格取得
[VB.NET]
'DataGridView1のはじめの列のテキストを変更する
DataGridView1.Columns(0).HeaderCell.Value = "はじめの列"
'DataGridView1のはじめの行のテキストを変更する
DataGridView1.Rows(0).HeaderCell.Value = "はじめの行"
'DataGridView1の左上隅のセルのテキストを変更する
DataGridView1.TopLeftHeaderCell.Value = "左上"
15. DataGridView表头部单元格文字列设定
更改列Header表示文字列
[VB.NET]
'DataGridView1のはじめの列のテキストを変更する
DataGridView1.Columns(0).HeaderText = "はじめの列"
更改行Header表示文字列
[VB.NET]
'DataGridView1の行ヘッダーに行番号を表示する
Dim i As Integer
For i = 0 To DataGridView1.Rows.Count - 1
DataGridView1.Rows(i).HeaderCell.Value = i.ToString()
Next i
'行ヘッダーの幅を自動調節する
DataGridView1.AutoResizeRowHeadersWidth( _
DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders)
最左上Header单元格文字列
[VB.NET]
'左上隅のヘッダーセルに"/"と表示する
DataGridView1.TopLeftHeaderCell.Value = "/"
16. DataGridView选择的部分拷贝至剪贴板
拷贝模式设定
[VB.NET]
'ヘッダーをコピーしないようにする
DataGridView1.ClipboardCopyMode = _
DataGridViewClipboardCopyMode.EnableWithoutHeaderText
选中部分拷贝
[VB.NET]
'選択されたセルをクリップボードにコピーする
Clipboard.SetDataObject(DataGridView1.GetClipboardContent())
17.DataGridView粘贴
[VB.NET]
'現在のセルのある行から下にペーストする
If DataGridView1.CurrentCell Is Nothing Then
Return
End If
Dim insertRowIndex As Integer = DataGridView1.CurrentCell.RowIndex
'クリップボードの内容を取得して、行で分ける
Dim pasteText As String = Clipboard.GetText()
If String.IsNullOrEmpty(pasteText) Then
Return
End If
pasteText = pasteText.Replace(vbCrLf, vbLf)
pasteText = pasteText.Replace(vbCr, vbLf)
pasteText.TrimEnd(New Char() {vbLf})
Dim lines As String() = pasteText.Split(vbLf)
Dim isHeader As Boolean = True
For Each line As String In lines
'列ヘッダーならば飛ばす
If isHeader Then
isHeader = False
Else
'タブで分割
Dim vals As String() = line.Split(ControlChars.Tab)
'列数が合っているか調べる
If vals.Length - 1 <> DataGridView1.ColumnCount Then
Throw New ApplicationException("列数が違います。")
End If
Dim row As DataGridViewRow = DataGridView1.Rows(insertRowIndex)
'ヘッダーを設定
row.HeaderCell.Value = vals(0)
'各セルの値を設定
Dim i As Integer
For i = 0 To row.Cells.Count - 1
row.Cells(i).Value = vals((i + 1))
Next i
'次の行へ
insertRowIndex += 1
End If
Next line
18. DataGridView单元格上ToolTip表示设定(鼠标移动到相应单元格上时,弹出说明信息)
[VB.NET]
'セルに表示するToolTipを設定する
DataGridView1(0, 0).ToolTipText = "このセルは変更できません"
'列ヘッダーに表示するToolTipを設定する
DataGridView1.Columns(0).ToolTipText = "この列には数字を入力できます"
'行ヘッダーに表示するToolTipを設定する
DataGridView1.Rows(0).HeaderCell.ToolTipText = "この行のセルは変更できません"
CellToolTipTextNeeded事件,在多个单元格使用相同的ToolTips的时候,可以用该事件,下例为显示当前单元格的行号和列号
[VB.NET]
'CellToolTipTextNeededイベントハンドラ
Private Sub DataGridView1_CellToolTipTextNeeded(ByVal sender As Object, _
ByVal e As DataGridViewCellToolTipTextNeededEventArgs) _
Handles DataGridView1.CellToolTipTextNeeded
e.ToolTipText = e.ColumnIndex.ToString() + ", " + e.RowIndex.ToString()
End Sub