こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VB.NET DataGridView 縦スクロールバーを常に表示

VB.netについてなのですが、
DataGridViewの縦スクロールバーを常に表示したいです。
データ数によってスクロールバーが表示されたり非表示になったりしていますが、常に表示することは可能でしょうか。教えてください。

環境:
Visualstudio2005
windows XP
よろしくお願いします。

投稿日時 - 2010-03-29 10:41:24

QNo.5787126

困ってます

質問者が選んだベストアンサー

Private vsBar As VScrollBar
Private Sub DataGridViewScrollBar_Load(ByVal sender As Object, ByVal e As EventArgs)
Me.tESTTableAdapter.Fill(Me.testdbDataSet.TEST)

For Each c As Control In dataGridView1.Controls
If TypeOf c Is VScrollBar Then
vsBar = DirectCast(c, VScrollBar)

AddHandler vsBar.VisibleChanged, AddressOf vsBar_VisibleChanged
End If
Next
End Sub
Private Sub vsBar_VisibleChanged(ByVal sender As Object, ByVal e As EventArgs)
If Not vsBar.Visible Then
'縦クロースバーを常に表示する。
Dim borderWidth As Integer = 2

vsBar.Location = New Point(Me.dataGridView1.ClientRectangle.Width - vsBar.Width, 0)
vsBar.Size = New Size(vsBar.Width, Me.dataGridView1.ClientRectangle.Height - borderWidth)
vsBar.Show()
End If
End Sub

ミスしてたらごめんなさい・・・orz

投稿日時 - 2010-03-29 11:56:41

ANo.2

このQ&Aは役に立ちましたか?

6人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

可能ですが面倒で冗長です。
これをやる意味もわかりませんが・・・

http://social.msdn.microsoft.com/Forums/ja-JP/csharpgeneralja/thread/2ed4afb0-0dc1-4899-b251-dad717564b19

こちらのサイトを参考にしてみたらどうでしょうか。
C#で書かれてますがVBに直すことができないのであれば言ってください。

投稿日時 - 2010-03-29 11:42:57

補足

すみません。お手数ですが、VBの書き方で書いてもらえませんでしょうか?
よろしく、お願いします。

投稿日時 - 2010-03-29 11:45:45

お礼

こちらもきれいにできましたので、ありがとうございました。

投稿日時 - 2010-03-29 17:59:15