单击“超链接”时出错

时间:2018-01-07 07:03:23

标签: c# wpf gridview datagrid datagridviewcolumn

我在WPF中有DataGrid,其中包含包含HyperLink项目的列,单击这些项目时会显示这些图像。当我点击超链接时,我的图像会显示但我收到此错误。Image of Error is Attached

下面是DataGridView超链接列的xaml。

    <DataGridHyperlinkColumn Header="CNIC" Binding="{Binding s_man_image}" Width="100" >
                <DataGridHyperlinkColumn.ElementStyle>
                    <Style TargetType="TextBlock">
                        <EventSetter Event="Hyperlink.Click" Handler="DataGrid_Click" />
                    </Style>
                </DataGridHyperlinkColumn.ElementStyle>
            </DataGridHyperlinkColumn>

这是DataGrid_Click事件的代码

    private void DataGrid_Click(object sender, RoutedEventArgs e)
    {
        var hyperlink = e.OriginalSource as Hyperlink;
        if (hyperlink != null)
        {
            Process.Start(hyperlink.NavigateUri.ToString());
            e.Handled = true;
        }

    }

1 个答案:

答案 0 :(得分:0)

在datagrid定义中,您缺少实际的目标本身,i。 uri本身。您需要使用绑定属性来定义它,并使用内容绑定属性显示图像。

DataGridHyperlinkColumn Header="CNIC"   Binding="{Binding Path=uri}"
                 ContentBinding="{Binding Path=s_man_image}" Width="100" >
                <DataGridHyperlinkColumn.ElementStyle>