C#ListView平铺宽度100%?

时间:2010-12-16 17:47:39

标签: c# winforms listview tiles fluid

我将ListView设置为Tileview。 ListView宽度为300,拼贴宽度也是如此。

当图块数量没有溢出导致滚动条时,这种方法很好。

当它出现溢出时,当出现垂直滚动条时,也会出现水平滚动条,因为垂直滚动条会降低切片的列表视图宽度。有没有办法让瓷砖自动调整以填充列表视图?

参见示例图片:

目前发生的事情: alt text

我想要发生什么: alt text

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

1 个答案:

答案 0 :(得分:4)

没有直接的方法来检测滚动条是否可见。但是,间接的方法是为ClientSizeChanged事件编写一个事件处理程序:

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

同时更改设备上的DPI设置以验证您的图块尺寸是否合适。这通常会改变控件的大小。 ClientSize.Width是你的朋友。