首页 > 解决方案 > C# Listbox 将文本转换为超链接

问题描述

我有一个表单,允许用户输入名称并对各种定义的文件夹执行搜索,并在列表框中显示搜索到的文件(完整路径)。现在我想将“完整路径”字符串转换为超链接,因此当用户在 ListBox 内单击它时,它将启动 Window explorer 以定位并突出显示文件。这是我到目前为止得到的代码:

 public void searchfile()
    {
        
        string fn = txt_filename.Text;
        lst_box1.Items.Clear();

        try
        {
            // Only get files that begin with the letter "c".
            List<string> dirs = new List<string>();
            dirs.AddRange(Directory.GetFiles(@"D:\Temp\Downloads", "*" + fn + "*"));
            
            foreach (string dir in dirs)
            {
                
                    lst_box1.Items.Add(dir);
                   
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
        }
    }

谢谢

标签: visual-studioc#

解决方案


您的问题是关于在 WinForms 中的可视化中做什么。但是您的代码是关于如何用数据填充 ListBox。

ListBox 有一个事件SelectedIndexChanged。每当在该控件中选择另一个项目时,都会调用它。

您可以订阅它并获取所选项目值以在所需位置打开资源管理器窗口。

如果您不知道如何使用 C# 在特定位置打开文件资源管理器,请查看此问题


推荐阅读