Winforms 如何在powershell中更改列表框中项目的高度?
我试图将项的高度设置为Winforms 如何在powershell中更改列表框中项目的高度?,winforms,powershell,listbox,Winforms,Powershell,Listbox,我试图将项的高度设置为列表框的高度。换句话说,在列表框中只能看到一个项。现在,有两个项目是可见的 我尝试更改DrawMode属性以及IntegralHeight但没有效果。有什么建议吗?如值名所示,[DrawMode]::OwnerDrawFixed要求控件所有者(即您!)在屏幕上显式绘制项目 您可以通过将事件处理程序添加到DrawItem事件属性来完成此操作: $listBox.add_DrawItem({ param( [object]$sender,
列表框的高度。换句话说,在列表框中只能看到一个项。现在,有两个项目是可见的
我尝试更改DrawMode
属性以及IntegralHeight
但没有效果。有什么建议吗?如值名所示,[DrawMode]::OwnerDrawFixed
要求控件所有者(即您!)在屏幕上显式绘制项目
您可以通过将事件处理程序添加到DrawItem
事件属性来完成此操作:
$listBox.add_DrawItem({
param(
[object]$sender,
[System.Windows.Forms.DrawItemEventArgs]$eargs
)
$eargs.DrawBackground()
$eargs.Graphics.DrawString($listBox.Items[$eargs.Index].ToString(), $eargs.Font, [System.Drawing.Brushes]::Black, $eargs.Bounds.Left, $eargs.Bounds.Top)
$eargs.DrawFocusRectangle()
})
$eargs.Font
继承自$listbox.Font
,因此,如果希望绘制的字符串也更大,请进行修改:
$listBox.Font = [System.Drawing.Font]::new($listBox.Font.FontFamily.Name, 18)
请尝试将$listBox.height的值设为17。T-Me可以,但我希望保持原始高度。也许您要的是a,而不是?Theo,事实上,您是对的,它更适合我的需要。然而,在玩了一会儿之后,我发现改变组合框的高度并不容易。不过还是要谢谢你!
$listBox.Font = [System.Drawing.Font]::new($listBox.Font.FontFamily.Name, 18)