|
||||||||||||||||||||||
開発環境 | WindowsVista VB2010(VS2010 Pro) Framework 4 / ターゲットCPU:X86 [Option Compare Text] [Option Explicit On] [Option Infer On] [Option Strict On]で設定 |
|||||||||||||||||||||
その他条件 | 使用データ(dgvdat1.csv)は、次よりダウンロードして使って下さい。 dgvdat309.zip データファイルは、プログラムの起動フォルダーに入れておいてください。 DataGridViewに表示(その1) で、データを表示した状態で実施してください。 下記サンプルコードと同等のイベントで実施してください。 |
|||||||||||||||||||||
1.DataGridView の選択範囲をクリップボードにコピー Private Sub Button116_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button116.Click '選択範囲をクリップボードにコピー Clipboard.SetDataObject(DataGridView1.GetClipboardContent()) 'そのデータをExcel上で、形式を選択して貼り付け[テキスト]で選択した表データがそのまま表示されます。 End Sub |
||||||||||||||||||||||
2.DataGridView の選択された行データ(セル)をクリップボードにコピー及び取得 Private Sub Button117_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button117.Click '別途下記のように(表示その2)で読み込み表示後、2行目を選択しておいてください。 ' Button3.PerformClick() ' DataGridView1.ClearSelection() ' DataGridView1.Rows(1).Selected = True '選択された行データ(セル)をクリップボードにコピー及び取得 '(1)ヘッダーをコピーしない Me.DataGridView1.ClipboardCopyMode = _ DataGridViewClipboardCopyMode.EnableWithoutHeaderText '(2)選択行をクリップボードにコピー Clipboard.SetDataObject(Me.DataGridView1.GetClipboardContent()) '(3)クリップボードのデータを6行目に挿入 Me.DataGridView1.Rows.Insert(3, Clipboard.GetText.Split(CChar(vbTab))) End Sub |
||||||||||||||||||||||
3.DataGridView の背景色(濃いグレーの部分)を設定する Private Sub Button118_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button118.Click 'DataGridView の背景色(濃いグレーの部分)を設定する DataGridView1.BackgroundColor = ColorTranslator.FromOle(RGB(255, 227, 240)) End Sub |
||||||||||||||||||||||
4.DataGridView にコンテキストメニュー(ショートカットメニュー)を設定 別途、ContextMenuStrip1 コントロールを用意しておいてください Private Sub Button35_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button35.Click '(1)1列目にだけ設定する場合 DataGridView1.Columns(0).ContextMenuStrip = ContextMenuStrip1 '(2)列ヘッダーに設定する場合 DataGridView1.Columns(0).HeaderCell.ContextMenuStrip = ContextMenuStrip1 '(3)1行目にだけ設定する場合 DataGridView1.Rows(0).ContextMenuStrip = ContextMenuStrip1 '(4)セル全体に対して設定する場合 DataGridView1.ContextMenuStrip = ContextMenuStrip1 '(5)セル個別に対して設定する場合 DataGridView1(0, 1).ContextMenuStrip = ContextMenuStrip1 '(6)上記設定を元に戻す場合 DataGridView1.Columns(0).ContextMenuStrip = Nothing DataGridView1.Columns(0).HeaderCell.ContextMenuStrip = Nothing DataGridView1.Rows(0).ContextMenuStrip = Nothing DataGridView1.ContextMenuStrip = Nothing DataGridView1(0, 1).ContextMenuStrip = Nothing End Sub |
||||||||||||||||||||||
5.DataGridView のセル個別に ToolTipText を表示する Private Sub DataGridView1_MouseMove(ByVal sender As Object, _ ByVal e As System.Windows.Forms.MouseEventArgs) Handles DataGridView1.MouseMove '今回は、便宜上セルの値を表示しておりますが、配列変数の値を表示事もできます Dim pos As System.Windows.Forms.DataGridView.HitTestInfo = DataGridView1.HitTest(e.X, e.Y) If pos.Type = DataGrid.HitTestType.Cell And pos.RowIndex < DataGridView1.RowCount - 1 Then DataGridView1.Item(pos.ColumnIndex, pos.RowIndex).ToolTipText = _ DataGridView1.Item(pos.ColumnIndex, pos.RowIndex).Value.ToString End If End If |
||||||||||||||||||||||
6.DataGridView のデフォルトでのツールチップテキストを非表示に設定 Private Sub Button47_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button47.Click 'DataGridView のセルの内容のツールチップテキストを表示しないように設定 'セルの値がセルに表示しきれない場合、デフォルトでツールチップテキストが表示されるのがうっとおしい場合等に '別途、プロパティからの設定でも OK。 DataGridView1.ShowCellToolTips = False End Sub |
||||||||||||||||||||||
7.DataGridView の | ||||||||||||||||||||||
8.DataGridView の | ||||||||||||||||||||||
9.DataGridView の |