我目前在单个表单上放置ListView
,然后通过代码隐藏向此ListView
添加按钮。除了事实上,当列表中添加了太多项目时,它不会创建垂直滚动条,这一切都很有效吗?我可以简单地添加尽可能多的按钮,而不创建一个按钮?这是将按钮添加到列表中的代码:
Dim x As Integer = 0
Dim btnCount As Integer = -1
Dim totalButtons As List(Of Button) = New List(Of Button)
Dim mItems As ListView.ListViewItemCollection =
New ListView.ListViewItemCollection(lstViewEditor)
For x = 0 To 14
'Create Button
Dim button As Button = New Button
button.Text = "0"
button.BackgroundImageLayout = ImageLayout.Center
button.BackColor = Color.WhiteSmoke
button.Width = ((Me.lstViewEditor.Width - 10) / 15)
button.Height = button.Width
button.Location = New Point(x * (button.Width), 0)
'If start
If (Me.lstViewEditor.Controls.Count <= 14) Then
button.Text = "2"
button.BackColor = Color.Azure
End If
'Add To View
'Me.Controls.Add(button)
totalButtons.Add(button)
btnCount = totalButtons.Count - 1
AddHandler button.Click, AddressOf totalButtonHandler
Next
lstViewEditor.Controls.AddRange(totalButtons.ToArray)
任何帮助将不胜感激!我确实设置了Scrollable = true
答案 0 :(得分:0)
尝试为ListView定义高度。
答案 1 :(得分:0)
我想我现在可以回答我自己的问题了。添加到ListView
的Button(控件)没有添加到View的集合中,而只是直接添加到控件中。这是我遇到困难的地方。我假设只有当视图的集合子项增长超过某一点时你才会得到滚动条,因为我每次添加一个按钮时都会向集合中添加一些东西,它给了我吧!不喜欢这个解决方案所以显然只是因为预构建DataGridView
而简单地使用了ButtonColumn
。