我在VB.Net Windows窗体项目中有一个标准的ListView
控件。视图设置为Tile。用户报告他们看到以下内容:
你知道我怎么解决这个问题吗?所有的设计工作都是使用VS 2010完成的。
答案 0 :(得分:5)
是的,当您更改列表视图的TileSize属性并且您的程序在具有更高视频DPI设置的计算机上运行时,会发生这种情况。这将使字体更大。导致文本不再适合拼贴。其他所有内容都由Form类中内置的自动缩放处理。
您应该缩放图块大小,使其更大,以便文本再次适合。使它看起来类似于:
Protected Overrides Sub OnLoad(ByVal e As System.EventArgs)
MyBase.OnLoad(e)
Using gr = Me.CreateGraphics
Dim tile As New Size( _
CInt(Me.ListView1.TileSize.Width * gr.DpiX / 96), _
CInt(Me.ListView1.TileSize.Height * gr.DpiY / 96))
ListView1.TileSize = tile
End Using
End Sub
这假设您在具有默认的96点/英寸设置的计算机上设计了表单。在原始图块大小上留下一点松弛,由于TrueType提示,缩放不完美。