C# ListView:启用文本修剪,而不是水平三角形工具栏
我试图搜索谷歌,但我无法清楚地表达它 所以我们的想法是:若文本不能在C# ListView:启用文本修剪,而不是水平三角形工具栏,c#,.net,wpf,formatting,string-formatting,C#,.net,Wpf,Formatting,String Formatting,我试图搜索谷歌,但我无法清楚地表达它 所以我们的想法是:若文本不能在TextBlock中完全显示,那个么应该删除文本的结尾并添加“…”。对于固定大小,我可以这样写: DetailsListView.Items.Add(string.Format("{0}.{1} - {2}...", i + 1, j + 1, somestring.Remove(15))); 但对于动态WPF布局,它看起来很难看 最好的方法是什么 我正在试这个,但不起作用 <ListView Grid.Ro
TextBlock
中完全显示,那个么应该删除文本的结尾并添加“…”。对于固定大小,我可以这样写:
DetailsListView.Items.Add(string.Format("{0}.{1} - {2}...", i + 1, j + 1, somestring.Remove(15)));
但对于动态WPF布局,它看起来很难看
最好的方法是什么
我正在试这个,但不起作用
<ListView Grid.Row="1" Grid.Column="1" Grid.RowSpan="2" Margin="5" Name="TaskListView">
<ListView.ItemTemplate>
<DataTemplate>
<TextBlock TextTrimming="CharacterEllipsis" Text="{Binding}"></TextBlock>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
只出现一个滚动条
无需自己动手,
TextBlock
已经可以为您完成以下操作:
<TextBlock TextTrimming="CharacterEllipsis"/>
当然,如果您的TextBlock
位于一个按需增长的窗格中,则无需修剪-您可以在TextBlock
或列表视图上设置固定大小,并禁用水平滚动。
<TextBlock
TextTrimming="WordEllipsis" TextWrapping="NoWrap"
FontSize="14">
One<LineBreak/>
two two<LineBreak/>
Three Three Three<LineBreak/>
four four four four<LineBreak/>
Five Five Five Five Five<LineBreak/>
six six six six six six<LineBreak/>
Seven Seven Seven Seven Seven Seven Seven
</TextBlock>
一个
22
三三三
4444
五五五五
666666
七七七七七
如果您使用的是WPF,请检查此项,然后此链接可能会有用。请查看此答案:您的标题不清楚-您的意思是:“在滚动条出现时启用自动删除”?@markmnl现在已修复,我希望您应该使用ScrollViewer.HorizontalScrollBarVisibility
<TextBlock
TextTrimming="WordEllipsis" TextWrapping="NoWrap"
FontSize="14">
One<LineBreak/>
two two<LineBreak/>
Three Three Three<LineBreak/>
four four four four<LineBreak/>
Five Five Five Five Five<LineBreak/>
six six six six six six<LineBreak/>
Seven Seven Seven Seven Seven Seven Seven
</TextBlock>