Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.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# 链接标签。。。是否在默认web浏览器中打开?_C#_Linklabel - Fatal编程技术网

C# 链接标签。。。是否在默认web浏览器中打开?

C# 链接标签。。。是否在默认web浏览器中打开?,c#,linklabel,C#,Linklabel,是否可以在默认计算机web浏览器中打开链接标签?是-您可以在“单击链接”事件中使用系统.诊断.流程.启动(url)。我总是这样使用它们。这样,您将使用默认浏览器打开URL ProcessStartInfo sInfo = new ProcessStartInfo("http://www.google.com"); Process.Start(sInfo); 以下是一个受此启发的解决方案,它不需要将URL硬编码到代码中: private void linkLabel1_LinkClicked(o

是否可以在默认计算机web浏览器中打开链接标签?

是-您可以在“单击链接”事件中使用
系统.诊断.流程.启动(url)

我总是这样使用它们。这样,您将使用默认浏览器打开URL

ProcessStartInfo sInfo = new ProcessStartInfo("http://www.google.com");
Process.Start(sInfo);

以下是一个受此启发的解决方案,它不需要将URL硬编码到代码中:

private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
    string url;
    if (e.Link.LinkData != null)
        url = e.Link.LinkData.ToString();
    else
        url = linkLabel1.Text.Substring(e.Link.Start, e.Link.Length);

    if (!url.Contains("://"))
        url = "https://" + url;

    var si = new ProcessStartInfo(url);
    Process.Start(si);
    linkLabel1.LinkVisited = true;
}

然后,您可以轻松地使用LinkArea在链接周围添加非超链接文本。

尝试此解决方案,它更好:

private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
    System.Diagnostics.Process.Start(((LinkLabel)sender).Text);
}

一旦设置了正确的有效url,这就是默认行为。到目前为止,你遇到了什么样的问题?你的代码是什么样子的?我在属性中寻找一些可以启动它的东西。最初,我只是尝试将url地址设置为.Text属性,但这当然不起作用。我不了解此控件的存在,可能是因为我不知道如何使用它,例如此私有的void linkSubmit\u LinkClicked(对象发件人,LinkLabelLinkClickedEventArgs e){System.Diagnostics.Process.Start(linkSubmit.text作为字符串);}谢谢…:D:D