1

我有一个基于用户输入的 C# Windows 表单将获取多个下载链接。现在我在向用户显示此链接时遇到困难,以便他们可以单击所需的链接下载文件。

我可以显示所有内容,MessageBox但无法在其中创建链接,MessageBox并且由于下载链接很长,因此对用户不友好。

我在http://msdn.microsoft.com/en-us/library/aa288420(v=vs.71).aspx的示例中尝试了 LinkLabel 。这可以工作,但仅适用于 1 个链接。

知道如何为多个链接执行此操作,还是有其他方法?

4

3 回答 3

5

创建您自己的表单以向用户显示消息。此外,使用 TableLayoutPanel 和 LinkLabel 在创建的自定义消息表单中显示多个链接,如下所示。

string[] links = new string[10];
TableLayoutPanel panel = new TableLayoutPanel();
panel.RowCount = links.Length;
panel.ColumnCount = 1;
int currentRow = 0;
foreach (var link in links)
{
    LinkLabel linkLabel = new LinkLabel();
    linkLabel.Text = "Click here to get more info.";
    linkLabel.Links.Add(6, 4, link);
    linkLabel.OnLinkClicked += OnLinkClicked;
    panel.Controls.Add(linkLabel, 0, currentRow++);
}
this.Controls.Add(panel);

事件处理程序如下所示,

void OnLinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
    Process.Start(e.Link);
}
于 2013-06-06T10:27:21.533 回答
2

请参阅此 msdn 链接中的示例代码。http://msdn.microsoft.com/en-us/library/system.windows.forms.linklabel.link.aspx

于 2013-06-06T11:28:23.490 回答
0

试试这个:

Process.Start(e.Link.LinkData.ToString());
于 2015-09-11T09:05:14.677 回答