2010-06-28 84 views
4

我有一個ListView,對於View = List,希望列表項填滿整個控件的寬度。也就是說,當你點擊一個項目時,整行被突出顯示。如何顯示ListViewItem的全行高亮顯示?

我無法在ListView或ListViewItem中找到任何設置來控制此行爲,並且使用空格填充效果不佳,因爲我無法依賴固定寬度的文本。

任何人都知道該怎麼做?

回答

8

您可以將 ListViewItem的寬度綁定到 ListView寬度:

... 
    <ListView.ItemContainerStyle> 
     <Style TargetType="ListViewItem"> 
      <Setter Property="Width" Value="{Binding ActualWidth, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListView}}}" /> 
     </Style> 
    <ListView.ItemContainerStyle> 
... 


編輯:您可以將ListView.FullRowSelect屬性設置爲true

+0

我想象適用於WPF,但我正在使用Windows窗體!任何想法如何可以在WinForms中完成? – Pat 2010-06-29 14:25:43

+0

哎呀...我想我花了很多時間在WPF編碼,對此感到遺憾。查看我的更新回答 – 2010-06-29 21:58:21

+2

謝謝托馬斯。實際上,'FullRowSelect'只適用於View = Details(http://msdn.microsoft.com/zh-cn/library/system.windows.forms.listview.fullrowselect.aspx),但我可以切換到細節視圖沒有問題,所以它爲我工作。 – Pat 2010-06-30 15:13:05