![](/img/trans.png)
[英]How To Avoid Horizontal Scrollbar During Proportional Resize of WPF ListView Columns
[英]Dividing listview into columns, with horizontal scroll (wpf)
我有一個分為兩列的列表視圖。 問題是,如果進入列表視圖的信息太長,則字符串會發生什么。
如果我設置固定寬度,它將裁切一些寬度。 如果我設置了自動寬度,則listview列的初始狀態將看起來很糟。
相關的XAML:
<ListView Width="Auto" Height="Auto" Margin="10" Background="#092E3E" Foreground="White" ItemsSource="{Binding BackupEvents}" >
<ListView.ItemContainerStyle>
<Style TargetType="{x:Type ListViewItem}">
...
</Style>
</ListView.ItemContainerStyle>
<ListView.View>
<GridView AllowsColumnReorder="False">
<GridView.ColumnHeaderContainerStyle>
...
</GridView.ColumnHeaderContainerStyle>
<GridView.Columns>
<GridViewColumn Width="200" Header="Time" DisplayMemberBinding="{Binding LVTime}"/>
// auto or fixed?
<GridViewColumn Width="Auto"/"520" Header="Details" DisplayMemberBinding="{Binding LVDetails}"/>
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
我認為最好的解決方案是使列大小固定,但是如果需要,可以將文本/列表條目包裝成多行。 但是我不確定該怎么做...
您可以在一定寬度的數據后顯示省略號
我認為最好的解決方案是使列大小固定,但是如果需要,可以將文本/列表條目包裝成多行。 但是我不確定該怎么做...
您可以定義一個隱式TextBlock
Style
,將GridView
中所有TextBlocks
的TextWrapping
屬性設置為Wrap
:
<ListView Width="Auto" Height="Auto" Margin="10" Background="#092E3E" Foreground="White" ItemsSource="{Binding BackupEvents}" >
<!-- HERE: -->
<ListView.Resources>
<Style TargetType="{x:Type ListViewItem}">
<Setter Property="TextBlock.TextWrapping" Value="Wrap" />
</Style>
</ListView.Resources>
<ListView.ItemContainerStyle>
<Style TargetType="{x:Type ListViewItem}">
...
</Style>
</ListView.ItemContainerStyle>
<ListView.View>
<GridView AllowsColumnReorder="False">
<GridView.ColumnHeaderContainerStyle>
...
</GridView.ColumnHeaderContainerStyle>
<GridView.Columns>
<GridViewColumn Width="200" Header="Time" DisplayMemberBinding="{Binding LVTime}"/>
// auto or fixed?
<GridViewColumn Width="Auto"/"520" Header="Details" DisplayMemberBinding="{Binding LVDetails}"/>
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.