Vin*_*khe 3 .net wpf datagrid ellipsis
我有一个用户评论很长的专栏.我使用以下代码加载它...
<my:DataGridTextColumn Header="Message"
Binding="{Binding UserMessage, Mode=OneWay}"
CanUserSort="True">
<my:DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}"
BasedOn="{StaticResource {x:Type TextBlock}}">
<Setter Property="TextWrapping"
Value="NoWrap" />
<Setter Property="TextTrimming"
Value="CharacterEllipsis"/>
<Setter Property="ToolTip"
Value="{Binding Path=UserMessage, Mode=OneWay}"/>
</Style>
</my:DataGridTextColumn.ElementStyle>
</my:DataGridTextColumn>
Run Code Online (Sandbox Code Playgroud)
但省略号不起作用.该列继续显示长文本数据.此外,当我明确地将文本块的宽度设置为某个值时,省略号工作正常,但是当我调整列的大小时,它不再显示其中的任何文本.
不是有一个明星的方式来做到这一点?
Thx Vinit Sankhe.
尝试在列上设置仅需要静态宽度的宽度.在此列上,您将宽度设置为"*"
<my:DataGridTextColumn Header="Message"
Binding="{Binding UserMessage, Mode=OneWay}"
CanUserSort="True"
Width="*">
<my:DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}"
BasedOn="{StaticResource {x:Type TextBlock}}">
<Setter Property="TextWrapping"
Value="NoWrap" />
<Setter Property="TextTrimming"
Value="CharacterEllipsis"/>
<Setter Property="ToolTip"
Value="{Binding Path=UserMessage, Mode=OneWay}"/>
</Style>
</my:DataGridTextColumn.ElementStyle>
</my:DataGridTextColumn>
Run Code Online (Sandbox Code Playgroud)
我通过谷歌搜索你的问题找到了你的问题.我拿了你的代码,只是在我的列中添加了宽度(除了"标题"列),并且能够正确地放置省略号.我还添加了一个MinWidth,以确保在调整窗口大小时,列不会被压缩为空.
| 归档时间: |
|
| 查看次数: |
3736 次 |
| 最近记录: |