FolderBrowserDialog 确实允许我浏览网络上的计算机,但它显示了其他不必要的文件夹(我不想要本地文件夹)。另外,我不想选择一个文件夹 - 只是计算机名称。

最佳答案

简单的:

private void button1_Click(object sender, EventArgs e)
{
    var folderName = GetNetworkFolders(new FolderBrowserDialog());
}

private string GetNetworkFolders(FolderBrowserDialog oFolderBrowserDialog)
{
    Type type = oFolderBrowserDialog.GetType();
    FieldInfo fieldInfo = type.GetField("rootFolder", BindingFlags.NonPublic | BindingFlags.Instance);
    fieldInfo.SetValue(oFolderBrowserDialog, 18);
    if (oFolderBrowserDialog.ShowDialog() == DialogResult.OK)
    {
        return oFolderBrowserDialog.SelectedPath.ToString();
    }
    else
    {
        return "";
    }
}

关于c# - 需要一个对话框来浏览网络上的计算机,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6930827/

10-09 20:02