2010-12-16 115 views
2

我有一个ListView设置为Tileview。 ListView宽度是300,瓦片宽度也是如此。C#ListView瓷砖宽度100%?

这可以正常工作,当瓷砖的数量不会溢出导致滚动条。

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

见示例图像:

目前会发生什么: alt text

我希望发生什么: alt text

我尝试设置宽度为100%,但是,这并不工作。有任何想法吗?

+0

这是“WPF”还是“Windows Forms”? – decyclone 2010-12-16 17:54:02

+0

该应用程序是Windows窗体 – Ozzy 2010-12-16 17:56:02

回答

3

没有直接的方法来检测滚动条变得可见。一种间接的方式,虽然,写的事件处理程序ClientSizeChanged事件:

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

而且改变你的机器上的DPI设置,以验证您的瓷砖尺寸仍然是合适的。这通常会改变控件的大小。 ClientSize.Width是你的朋友。