我想知道这是否是一件容易的事。我需要将datagrid中的一些文本作为超链接。我使用XMLDataProvider生成内容。任何想法都受到高度赞赏。
我的DataGrid如下所示。我正在使用WPF工具包:
<DataGrid x:Name="MainGrid" GridLinesVisibility="Horizontal" AutoGenerateColumns="False" RowHeight="20" ItemsSource="{Binding XPath=/ServicesTiles/Servers}"
HeadersVisibility="None" Margin="10,15,0,0"
HorizontalGridLinesBrush="{x:Null}"
BorderBrush="{x:Null}"
VerticalGridLinesBrush="{x:Null}"
Background="{x:Null}"
RowBackground="{x:Null}"
CellStyle="{DynamicResource DataGridCellStyle1}"
HorizontalAlignment="Left">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding XPath=@Name}" Foreground="#FF6E6E6E" MinWidth="160" />
<DataGridTextColumn Binding="{Binding XPath=@Status}" Foreground="#FF6E6E6E" MinWidth="270"/>
<DataGridTextColumn Binding="{Binding XPath=@Name2}" Foreground="#FF6E6E6E" MinWidth="220"/>
<DataGridTextColumn Binding="{Binding XPath=@Status2}" Foreground="#FF6E6E6E" MinWidth="220"/>
</DataGrid.Columns>
</DataGrid>
答案 0 :(得分:4)
以下DataGridColumn应该做你想要的(我没有测试,发表评论,如果它不起作用)
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock >
<Hyperlink>
<TextBlock Text="{Binding YourProperty}" />
</Hyperlink>
</TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
修改强>
根据要求,这里我的命题如何插入。让我知道它是否有效......
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding XPath=@Name}" Foreground="#FF6E6E6E" MinWidth="160" />
<DataGridTextColumn Binding="{Binding XPath=@Status}" Foreground="#FF6E6E6E" MinWidth="270"/>
<DataGridTextColumn Binding="{Binding XPath=@Name2}" Foreground="#FF6E6E6E" MinWidth="220"/>
<DataGridTextColumn Binding="{Binding XPath=@Status2}" Foreground="#FF6E6E6E" MinWidth="220"/>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock >
<Hyperlink>
<TextBlock Text="{Binding XPath=@Name2}" />
</Hyperlink>
</TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
答案 1 :(得分:1)
利用Command
上的Hyperlink
。如果您想回复DataContext
的{{1}},则需要使用DataGrid
并搜索类型FindAncestor
。
DataGrid