标签: openfiledialog

在C#.net中更改OpenFileDialog中的按钮文本

有谁知道如何在C#.NET中的Windows.Forms中的OpenFileDialog中更改按钮上的文本?

.net openfiledialog winforms

5
推荐指数
1
解决办法
7956
查看次数

如何在Visual Studio 2010中的C#中使用OpenFileDialog

我编写了一个自定义对话框(表单),我可以在C#程序中使用它,其行为很像"文件 - 打开"菜单命令,并打开一个用户可以选择文件或目录的窗口.

我的问题是这个.它以"我的电脑"为根.我怎样才能在网络上搜索?如果文件或目录位于网络上.

或者更好的是,在Visual Studio 2010中,是否有一些我可以立即使用的固定FileOpenDialog?

我尝试在http://msdn.microsoft.com/en-us/library/system.windows.forms.openfiledialog.aspx上的示例代码中调用OpenFileDialog, 但编译器似乎不喜欢DialogResult.OK此行中使用的代码:

if(openFileDialog1.ShowDialog() == DialogResult.OK)
Run Code Online (Sandbox Code Playgroud)

编译器说:

错误1'System.Nullable'不包含'OK'的定义,并且没有扩展方法'OK'可以找到接受类型'System.Nullable'的第一个参数(你是否缺少using指令或汇编引用?)

我尝试使用命名空间Microsoft.Win32而不是System.Windows.Forms,但都没有工作.他们都产生了这个错误.

c# wpf openfiledialog visual-studio-2010 visual-studio

5
推荐指数
1
解决办法
2万
查看次数

我如何使用OpenFileDialog类,使其在网络区域默认打开?

我如何使用OpenFileDialog类(在C#,WPF等中),以便它在网络区域默认打开?

这不起作用:

  OpenFileDialog openFileDialog1 = new OpenFileDialog();
  openFileDialog1.InitialDirectory = "Network";
Run Code Online (Sandbox Code Playgroud)

我也尝试将"\"作为InitialDirectory,但是没有用.

我也尝试将"\\"作为InitialDirectory,但也没有用.

c# wpf openfiledialog

5
推荐指数
1
解决办法
4220
查看次数

OpenFileDialog在Windows 7中不显示完整的文件名

OpenFileDialog在Windows 7中未显示完整的文件名.还会报告connect.microsoft.com的问题.

设置还有一个工作openFileDialog.AutoUpgradeEnabled = false.但这会导致旧的xp样式对话框.有没有办法解决它而不做上述解决方法.对话框中没有窗口句柄,所以我无法弄清楚如何添加自定义窗口消息处理程序来执行sendmessage()来修复它.

        using (OpenFileDialog openFileDialog = new OpenFileDialog())
            {
            openFileDialog.FileName = "abcdefghijklmnopqrstuvwxyz";
            openFileDialog.ShowDialog();
            }
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

.net c# openfiledialog windows-7

5
推荐指数
1
解决办法
2038
查看次数

为什么OpenFileDialog冻结特定机器上的WinForms应用程序?

我有一个WinForms应用程序部署到同一办公室的多台机器上.在本周一之前,办公室中的所有用户都没有使用该应用程序,并使用OpenFileDialog选择要导入的文件.一台机器有很多其他应用程序的更新,现在我们的应用程序试图显示OpenFileDialog冻结.它显示OpenFolderDialog很好; 虽然我没有尝试SaveFileDialog.重复一遍,它上周工作,我们的应用程序没有更新,但它本周冻结在一台机器上,而它适用于办公室中的所有其他机器.

有问题的机器安装了另一个.NET应用程序,我验证了OpenFileDialog在其他应用程序中打开没有问题.

有关为什么OpenFileDialog会冻结在一台机器上的任何想法?有想法该怎么解决这个吗?我们可以尝试重新安装而不知道原因,但我认为最好调查为什么要防止它再次发生.

c# openfiledialog .net-3.5 winforms

5
推荐指数
1
解决办法
1524
查看次数

为什么 OpenFileDialog RestoreDirectory 没有实现?

我在 wpf 应用程序中使用 Microsoft.Win32.OpenFileDialog,因为它在此处声明为等效;http://msdn.microsoft.com/en-us/library/ms750559.aspx

我将 RestoreDirectory 属性设置为 true,但它没有任何效果。当我等待该属性时,记录为“此属性未实现”。

那么如何在不自己实现逻辑的情况下完成这项任务呢?

wpf openfiledialog

5
推荐指数
1
解决办法
743
查看次数

在 OpenFileDialog (WindowsAPICodePack) 上设置“我的电脑”位置

我想将InitialDirectorya的属性设置WindowsAPICodePack CommonOpenFileDialog我的计算机位置,我使用等效的CLSIDGUID或这到底是什么,只是我想知道是否存在更本地/安全的方法来正确设置我的计算机位置,我试过这个,但没有奏效:

.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyComputer) 
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的代码:

Dim FolderPicker As New Microsoft.WindowsAPICodePack.Dialogs.CommonOpenFileDialog

With FolderPicker

    .IsFolderPicker = True
    .Title = "Folder Dialog Test"
    .InitialDirectory = "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}" ' My Computer
    .DefaultFileName = "C:\"

End With
Run Code Online (Sandbox Code Playgroud)

更新:

我在 Windows 8 x64 上。

其他特殊文件夹(例如库和桌面)的工作方式如下:

.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) 
Run Code Online (Sandbox Code Playgroud)

.net vb.net openfiledialog winforms windows-api-code-pack

5
推荐指数
1
解决办法
3519
查看次数

OpenFileDialog 不显示

我有这个简单的代码:

private void buttonOpen_Click(object sender, EventArgs e)
{
    if (openFileDialog1.ShowDialog() == DialogResult.OK)
    {
        textBox2.Text = openFileDialog1.FileName;
    }
}
Run Code Online (Sandbox Code Playgroud)

当我运行程序时,窗体不显示并退出调试模式。

在输出视图中写道:程序 '[4244] openfiledialog.vshost.exe: Managed (v4.0.30319)' 已退出,代码为 1073741855 (0x4000001f)。

我有 Visual Studio 2010 专业版。

编辑:form1.designer.cs

     private void InitializeComponent()
    {
        this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
        this.buttonOpen = new System.Windows.Forms.Button();
        this.textBox1 = new System.Windows.Forms.TextBox();
        this.textBox2 = new System.Windows.Forms.TextBox();
        this.SuspendLayout();
        // 
        // openFileDialog1
        // 
        this.openFileDialog1.FileName = "openFileDialog1";
        // 
        // buttonOpen
        // 
        this.buttonOpen.Location = new System.Drawing.Point(13, 48);
        this.buttonOpen.Name = "buttonOpen";
        this.buttonOpen.Size = new System.Drawing.Size(75, 23);
        this.buttonOpen.TabIndex = …
Run Code Online (Sandbox Code Playgroud)

c# openfiledialog visual-studio-2010 winforms

5
推荐指数
1
解决办法
4358
查看次数

Open/SaveFileDialog 默认选择 CustomPlaces 文件夹

我们正在使用CustomPlacesOpen/SaveFileDialog 的属性向用户显示他们可以使用的各种配置的标准文件夹。

我们现在想要的是让InitialDirectory属性指向创建的CustomPlaces“文件夹”。有没有人能够做到这一点?

我已经阅读了有关FileDialog类(以及子序列 OpenFileDialog 和 SaveFileDialog)、InitialDirectory属性、Environment.SpecialFolder枚举器和KNOWNFOLDERID列表的 MSDN 文章,但都无济于事。
我还尝试将InitialDirectory属性设置为应用程序的名称,以防万一这很神奇。

用于 OpenFileDialog 的代码(目录是 demos atm):

using (OpenFileDialog tempDiag = new OpenFileDialog())
{
  tempDiag.CustomPlaces.Add(@"C:\Temp\");
  tempDiag.CustomPlaces.Add(@"C:\Program Files\");
  tempDiag.ShowDialog();
}
Run Code Online (Sandbox Code Playgroud)

调用时所需的默认选择tempDiag.ShowDialog();

开业时选择的 CustomPlaces

我知道可以通过这篇CodeProject文章中描述的方法完全自定义 XOpenDialog ,但我觉得这对于此时的默认选择来说有点极端。

.net c# openfiledialog savefiledialog

5
推荐指数
0
解决办法
490
查看次数

关闭 OpenFileDialog 会导致应用程序挂起 3-4 秒

在我WPF使用Caliburn.MicroMahApps.Metro框架的应用程序中,我打开OpenFileDialogSystem.Windows.Forms命名空间中的实例。打开和关闭此对话框后,我的应用程序的其余部分挂起大约 3 到 4 秒。使用Microsoft.Win32命名空间时也是如此。

我自己做了一些研究,并提出了一些抱怨同一问题的帖子,他们找到的解决方案有两个:

  1. 快速修复:将ShowHelp属性设置为true
  2. 正确修复:确保它在Single Threaded Apartment模式下运行。

ShowHelp修复程序通过使用非 vista 样式对话框对我有用,但从UXWindows Vista 和更新版本的角度来看,它看起来不正确。对我来说另一件事是确保它处于STA模式下。

WPFSTA默认情况下使用,但我尝试编写自己的主要方法并明确说明[STA]但没有运气。我将以下代码段添加到我的代码中,但输出为State: STA,表明应该没有问题。

Console.WriteLine("State: {0}", System.Threading.Thread.CurrentThread.GetApartmentState());
var dialog = new OpenFileDialog
Run Code Online (Sandbox Code Playgroud)

我也试过OpenFileDialog在一个新STA线程上启动它,虽然它启动并且没有挂起我的应用程序,但它也不再是模态的。我也尝试加入新线程,但关闭后它仍然挂起。

是否存在已知的潜在问题,OpenFileDialog如果有,是否有启动 FileDialogs 的替代方法可以避免这种挂起?

来源ShowHelpSTA评论:

c# wpf multithreading openfiledialog mahapps.metro

5
推荐指数
0
解决办法
471
查看次数