質問編集履歴
1
質問内容の改善・現状の説明を追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -4,11 +4,7 @@
|
|
4
4
|
|
5
5
|
Microsoft Visual Basic 2015 (.NetFrameWork4.0)でWindowsフォームアプリケ-ションを作っています。
|
6
6
|
|
7
|
-
|
8
|
-
|
9
7
|
DataGridView(複数行・複数列)の各セルに、改行を含む文字列を表示していています。
|
10
|
-
|
11
|
-
|
12
8
|
|
13
9
|
|
14
10
|
|
@@ -18,6 +14,46 @@
|
|
18
14
|
|
19
15
|
|
20
16
|
|
17
|
+
そこで、下記のようにDataGridViewのセルに対してDataGridViewTextBoxCellのクラスを設定し、
|
18
|
+
|
19
|
+
```vb.net
|
20
|
+
|
21
|
+
Dim dgvcolumn As DataGridViewTextBoxColumn = New DataGridViewTextBoxColumn()
|
22
|
+
|
23
|
+
dgvcolumn.CellTemplate = New DGVScrollableMultiLineCell()
|
24
|
+
|
25
|
+
```
|
21
26
|
|
22
27
|
|
28
|
+
|
29
|
+
設定したDataGridViewTextBoxCellでスクロールバーを表示させようとしました。
|
30
|
+
|
31
|
+
```vb.net
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
Public Class DGVScrollableMultiLineCell
|
36
|
+
|
37
|
+
Inherits System.Windows.Forms.DataGridViewTextBoxCell
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
Public Overrides Sub PositionEditingControl( ...)
|
42
|
+
|
43
|
+
MyBase.PositionEditingControl(....)
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
CType(Me.DataGridView.EditingControl, DataGridViewTextBoxEditingControl).ScrollBars = ScrollBars.Vertical
|
48
|
+
|
49
|
+
```
|
50
|
+
|
51
|
+
しかし、この方法では、DataGridViewで表示されたセルがマウスクリックで選択された場合に、スクロールバーが表示されます。
|
52
|
+
|
53
|
+
これは、PositionEditingControlのためだと考えておりますが、他の方法を見つけることができませんでした。
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
意図している「DataGridViewで表示された時に、各セルにスクロールバーを表示」したいのですが、
|
58
|
+
|
23
|
-
|
59
|
+
方法をご存知の方がおられましたら、ご教示いただけますと幸いです。
|