C#ListView瓷砖宽度100%?

C#ListView瓷砖宽度100%?,c#,winforms,listview,tiles,fluid-layout,C#,Winforms,Listview,Tiles,Fluid Layout,我将ListView设置为Tileview。ListView的宽度是300,平铺的宽度也是300 当平铺的数量没有溢出导致滚动条时,这可以很好地工作 但是当它溢出时,当垂直滚动条出现时,水平滚动条也会出现,因为垂直滚动条会降低平铺的listview宽度。有没有办法让互动程序自动调整大小以填充列表视图 请参见示例图像: 目前发生的情况: 我想发生的事: 我试着将宽度设置为100%,但不起作用。有什么想法吗?无法直接检测滚动条是否可见。不过,间接的方法是为ClientSizeChanged事件编

我将ListView设置为Tileview。ListView的宽度是300,平铺的宽度也是300

当平铺的数量没有溢出导致滚动条时,这可以很好地工作

但是当它溢出时,当垂直滚动条出现时,水平滚动条也会出现,因为垂直滚动条会降低平铺的listview宽度。有没有办法让互动程序自动调整大小以填充列表视图

请参见示例图像:

目前发生的情况:

我想发生的事:


我试着将宽度设置为100%,但不起作用。有什么想法吗?

无法直接检测滚动条是否可见。不过,间接的方法是为ClientSizeChanged事件编写事件处理程序:

    private void listView1_ClientSizeChanged(object sender, EventArgs e) {
        listView1.TileSize = new Size(listView1.ClientSize.Width, listView1.TileSize.Height);
    }

还要更改计算机上的DPI设置,以验证磁贴大小是否仍然合适。这通常会更改控件的大小。ClientSize.Width是您的朋友。

这是
WPF
还是
Windows窗体
?应用程序是Windows窗体