我试图安装Textblock
并在DataGrid
单元格中有一个按钮。 Textblock
包含我的文本的一部分,当我点击按钮时,显示一个对话框。我一般我的代码看起来像下面的那个在DataGrid Cell中安装一个文本框和一个按钮
<DataGridTemplateColumn Header="Message" Width="Auto" MinWidth="60">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientetion="Horrizontal">
<TextBlock MinWidth="200" TextTrimming="CharacterEllipsis" Text="{Binding Text}" />
<Button DockPanel.Dock="Right" Width="90" Margin="1" />
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
我希望按钮始终在单元的较右侧,并且它的宽度需要修复。 TextBlock
需要是可变的,例如当我调整窗口的大小时,所以DataGrid
,TextBlock
也应该拉伸。
的问题是,我不能做到这一点的行为/视图。每个DataGrid
线路上的TextBlock
都有所不同,在某些情况下,按钮不在小区的右侧。
我试图改变StackPanel
到Grid
或DockPanel
但我仍不能得到理想的结果。
使用Grid
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition MinWidth="100" Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" TextTrimming="CharacterEllipsis" Text="{Binding Text}" />
<Button Grid.Column="1" Margin="1" />
</Grid>
有什么想法可以分享?
你可以添加它的外观图像,它应该如何看? – Domysee
@Domysee我添加了一些图片。 – Athafoud
@Athafoud DockPanel或Grid应该可以工作。请发布您尝试的更改以及您看到的(新)问题。还要确保您的xaml更改反映在输出中。 –