Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 超级链接不断失败_C#_Wpf_Hyperlink_Datagridtemplatecolumn - Fatal编程技术网

C# 超级链接不断失败

C# 超级链接不断失败,c#,wpf,hyperlink,datagridtemplatecolumn,C#,Wpf,Hyperlink,Datagridtemplatecolumn,我正在尝试创建一个用户可以点击并导航到网站的hypelink 该链接正在工作,但我收到此异常,该异常会停止应用程序: 无法将资源转换为对象 超链接将是datagrid的一部分。以下是我所拥有的: XAML: ================================================================== 类数据:链接 ================================================================== 任务类 =

我正在尝试创建一个用户可以点击并导航到网站的hypelink

该链接正在工作,但我收到此异常,该异常会停止应用程序: 无法将资源转换为对象

超链接将是datagrid的一部分。以下是我所拥有的:

XAML: ==================================================================

类数据:链接 ==================================================================

任务类 ==================================================================

你有什么建议吗


BR

我自己发现了。我需要添加
e.handled=true到datagrid\u请求导航。刚刚还更新了代码示例


现在一切都在进行中

我发现了自己。我需要添加
e.handled=true到datagrid\u请求导航。刚刚还更新了代码示例


现在一切正常

为什么要同时使用
NavigateUri
属性和
RequestNavigate
事件?前者还不够吗?你能粘贴任务集合的代码和它的类型吗?为什么?是因为我遵循了这个问题的答案:你有什么建议?我只是想知道如果超链接使用http://scheme,NavigateUri本身是否不会启动浏览器。是的。。。2瑞典克朗。我会找到它为什么您同时使用
NavigateUri
属性和
RequestNavigate
事件?前者还不够吗?你能粘贴任务集合的代码和它的类型吗?为什么?是因为我遵循了这个问题的答案:你有什么建议?我只是想知道如果超链接使用http://scheme,NavigateUri本身是否不会启动浏览器。是的。。。2瑞典克朗。我会找到的
...
<DataTemplate x:Key="hyperlinkTemplate">
    <TextBlock>
        <Hyperlink NavigateUri="{Binding Link}" RequestNavigate="dataLink_RequestNavigate">
            <TextBlock Text="{Binding TaskID}"></TextBlock>
        </Hyperlink>
    </TextBlock>
</DataTemplate>
...

<DataGrid Grid.Column="1" AutoGenerateColumns="False" ItemsSource="{Binding Tasks}" >
    <DataGrid.Columns>
        <DataGridTemplateColumn Header="Name width link" CellTemplate="{StaticResource     hyperlinkTemplate}"></DataGridTemplateColumn>
...
...
private void dataLink_RequestNavigate(object sender, System.Windows.Navigation.RequestNavigateEventArgs e)
{
    Process.Start(e.Uri.ToString());
    e.Handled = true;
}
...
public string Link
    {
        get { return link; }
        set
        {
            link = value;
            Notify("Link");
        }
    }
[Serializable]
public class Task
{
    private XmlNode node;
    private string category = "";
    private int taskID = -1;
    private string taskName = "";
    private string taskResponsible = "";
    private string taskResponsibleDepartment = "";
    private int priority = 5;
    private string status = "Unknown";
    private string predecessorIndices = "None";
    private int indentLevel = 0;
    private int sortOrder = 0;
    private DateTime startDate = DateTime.Now;
    private TimeSpan estimatedHours = default(TimeSpan);
    private TimeSpan actualHours = default(TimeSpan);
    private DateTime estimatedDeploymentDate = default(DateTime);
    private DateTime desiredImplementationDate = default(DateTime);
    private string estimatedHoursRecovery = "";
    private string actualHoursRecovery = "";
    private string tags = "";
    private TimeSpan totalHoursActual = default(TimeSpan);
    private Department iN = new Department();
    private Department aPP = new Department();
    private Department sIS = new Department();
    private string link = "";
...