如何解决在Material Design中使用datagrind允许行增长和文本换行
我正在努力寻找如何使用材质设计在数据网格中扩展行的方法。基本上,如果一个单元格已满,我需要将字符串包装在单元格中,并允许行扩展以适合此情况。数据是从sql数据库中提取的,因此这是我当前拥有的XAML;
<DataGrid x:Name="tblProcesses" AutoGenerateColumns="False" CanUserAddRows="True"
BorderThickness="1" BorderBrush="{DynamicResource PrimaryHueMidBrush}" DockPanel.Dock="Top">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding order,UpdateSourceTrigger=PropertyChanged}" ClipboardContentBinding="{x:Null}" Header="Order" Width="80"/>
<DataGridTextColumn Binding="{Binding title,UpdateSourceTrigger=PropertyChanged}" ClipboardContentBinding="{x:Null}" Header="Process" Width="*"/>
<DataGridTextColumn Binding="{Binding description,UpdateSourceTrigger=PropertyChanged}" ClipboardContentBinding="{x:Null}" Header="Description" Width="2*"/>
<DataGridTextColumn Binding="{Binding imageURL,UpdateSourceTrigger=PropertyChanged}" ClipboardContentBinding="{x:Null}" Header="Image URL" Width="100"/>
<DataGridTextColumn Binding="{Binding tiMetaken,UpdateSourceTrigger=PropertyChanged}" ClipboardContentBinding="{x:Null}" Header="Time Taken" Width="100"/>
</DataGrid.Columns>
</DataGrid>
也是我绑定数据的最有效方法吗?它可以按我期望的方式工作(减去文字换行),但是我想看看专业人士如何解决这个问题。
解决方法
您可以执行此操作,并为特定列指定ElementStyle
。
<DataGrid.Columns>
<DataGridTextColumn Header="Wrapped & centered" Binding="{Binding field}">
<DataGridTextColumn.ElementStyle>
<Style>
<Setter Property="TextBlock.TextWrapping" Value="Wrap" />
<Setter Property="TextBlock.TextAlignment" Value="Center"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
</DataGrid.Columns>
或者您可以通过在窗口资源中定义样式来做到这一点。
<Window.Resources>
<Style TargetType="{x:Type TextBlock}" x:Key="WrapText">
<Setter Property="TextWrapping" Value="Wrap"/>
</Style>
</Window.Resources>
<DataGrid.Columns>
<DataGridTextColumn IsReadOnly="False" Header="Address"
Binding="{Binding Address}" ElementStyle="{StaticResource WrapText}" Width="150"/>
</DataGrid.Columns>
它将包裹单元格的内容,而不是剪切或剪切它。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。