假设我有一个ListBox
控件,其ID为myList
,我已添加了50个项目。垂直滚动条不可避免地显示在控件的右侧。两个相关问题:
如何在运行时确定要将myList.Height
设置为的值
这样滚动条就不会显示了?
如何确定一行所需的高度(使用填充)?
如果字体更改(国际化),myList.ClientSize.Height
的值会发生变化,因此在表单加载时需要保持动态。
注意:如果您想知道"为什么要删除滚动条?",我打算通过将ListBox
放在父控件上并在响应中修改myList.Top
来单独处理滚动单击向上/向下按钮。
答案 0 :(得分:0)
试试这个C# ListView Disable Horizontal Scrollbar
对于紧凑框架,必须将其更改为
[DllImport ("coredll")]
private static extern long ShowScrollBar (long hwnd , long wBar, long bShow);
long SB_HORZ = 0;
long SB_VERT = 1;
long SB_BOTH = 3;
private void HideHorizontalScrollBar ()
{
ShowScrollBar(listView1.Handle.ToInt64(), SB_HORZ, 0);
}
private void HideScrollBars ()
{
ShowScrollBar(listView1.Handle.ToInt64(), SB_BOTH, 0);
}
在How to hide the vertical scroll bar in a .NET ListView Control in Details mode还有另一个解决方案:用coredll替换user32用于紧凑框架/ Windows Mobile 6.x