好了,對不起,我提前英語,在這裏我需要什麼:有沒有更簡單/更好的方法來自動調整一列ListView的內容?
我得到了ListView
在XAML(WPF),其中有項目位於什麼,我需要的是一個項目有寬度等於ListView
的寬度。
到目前爲止,我這樣做:
<ListView Name="lvFiles" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<ListView.View>
<GridView>
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
<Grid Width="{Binding ElementName="lvFiles", Path=ActualWidth}">
<!-- All the controls inside I need to present an item -->
</Grid>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
但事實證明,在ListView
項目成爲右側裁剪垂直滾動條出現時。而且,當所有項目的總高度超過ListView.ActualHeight
時,所以我需要更復雜的用戶綁定,因此更復雜。
此外,我的項目,我花了幾個小時來解決問題,我的項目有時被剪在右側,沒有明顯的原因。
於是我想出了這一點:
<ListView Name="lvFiles" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<ListView.View>
<GridView>
<GridViewColumn Width="{Binding ElementName=lvFiles, Path=ActualWidth}">
<GridViewColumn.CellTemplate>
<DataTemplate>
<Decorator Width="{Binding RelativeSource={RelativeSource
Mode=FindAncestor, AncestorType=ListViewItem},
Path=ActualWidth}">
<Grid Margin="0,0,18,0">
<!-- All the controls inside... -->
</Grid>
</Decorator>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
它解決問題的剪裁,也將其與一個圓柱的ListViewItem
自動調整大小解決了這個問題。但現在它似乎不是最簡單的方法。有沒有這樣的?
在這種情況下,我看不到我的fav控件或任何項目。 ListView是空的。 – AgentFire
@AgentFire使用Snoop查看你去了哪裏錯誤...我可以告訴你它的工作方式... – Ankesh
@AgentFire檢查演示項目的鏈接 – Ankesh