【发布时间】:2014-12-12 06:10:32
【问题描述】:
我需要复制 wpf Text 块的文本内容。 我在 DataGrid 中有一个文本块,我需要在选择数据行时复制文本块的文本。
我的 xaml 代码在这里..
<DataGrid ItemsSource="{Binding ScenarioTraceLogDetails}" AutoGenerateColumns="False" CanUserAddRows="False"
RowHeaderWidth="0" Margin="10,0,10,10" Grid.Row="2" HorizontalAlignment="Stretch" FontSize="14">
<DataGrid.Columns>
<DataGridTemplateColumn Header="Log Description" Width="4*" MinWidth="550" IsReadOnly="True" >
<DataGridTemplateColumn.CellTemplate>
<DataTemplate DataType="TestAutomationClient:ScenarioTraceLogDetailWrapper">
<TextBlock Text="{Binding Path=LogDetail.Data}" TextWrapping="Wrap" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="Type" Binding="{Binding Path=LogDetail.LogType}" CanUserResize="True" Width="120" MinWidth="120" IsReadOnly="True"/>
<DataGridTextColumn Header="Category" Binding="{Binding Path=LogDetail.Category}" Width="150" MinWidth="150" IsReadOnly="True"/>
<DataGridTextColumn Header="Start Time" Binding="{Binding Path=LogDetail.StartTime}" Width="150" MinWidth="150" IsReadOnly="True"/>
<DataGridTextColumn Header="Completion Time" Binding="{Binding Path=LogDetail.CompletionTime}" MinWidth="150" Width="150" IsReadOnly="True"/>
<DataGridTextColumn Header="Duration (~ms)" Binding="{Binding Path=TimeTaken}" Width="120" MinWidth="120" IsReadOnly="True"/>
</DataGrid.Columns>
<DataGrid.Resources>
<Style TargetType="{x:Type DataGridRow}" BasedOn="{StaticResource {x:Type DataGridRow}}">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=IsError}" Value="true">
<Setter Property="Foreground" Value="Red" />
</DataTrigger>
<DataTrigger Binding="{Binding Path=IsWarning}" Value="true">
<Setter Property="Foreground" Value="DarkOrange" />
</DataTrigger>
<DataTrigger Binding="{Binding Path=IsSuccessfulInformation}" Value="true">
<Setter Property="Foreground" Value="Green" />
</DataTrigger>
</Style.Triggers>
<Setter Property="ToolTip" Value="{Binding Path=ScriptDatasetInfo}" />
<Setter Property="ToolTipService.ShowDuration" Value="60000" />
</Style>
</DataGrid.Resources>
</DataGrid>
【问题讨论】:
-
在回答您的问题之前,您是否使用 MVVM 模式?
-
是的,我正在使用 mvvm 模式
标签: wpf datagrid wpf-controls