我应该将哪个值分配给OpenFileDialog.FileName?

时间:2014-03-17 22:06:20

标签: c# .net wpf

对于这个程序,我想知道,FileName得到了什么?文献?还是d:\aa.doc? 据我了解,openfd.FileName可以是d:\\aa.docDocument。 但似乎Document未分配,只有d:\\aa.doc分配有效,为什么?

string FileName = "d:\\aa.doc";   //assign d:\aa.doc to Filename

private void openIt_Click(object sender, RoutedEventArgs e)
{
    OpenFileDialog openfd = new OpenFileDialog();
    openfd.FileName = "Document";  // not assign Document to FileName?
    openfd.DefaultExt = ".doc";  
    Nullable<bool> result = openfd.ShowDialog();

    if (result == true)
    {
        string filename = openfd.FileName;

1 个答案:

答案 0 :(得分:0)

OpenFileDialog的快速入门:

您几乎从不为FileName分配值,因为此值是用户选择的文件的路径。您可以使用它来预填充文件名,但如果文件不存在于开始文件夹中,它可能会恢复为String.Empty(您描述的行为)。你做的第一个任务与文件对话框无关,所以当然它总会成功。

您尝试做的是将过滤字符串设置为word文档,您可以通过设置过滤器属性来执行此操作:

openFd.Filter = "Word Documents|*.doc"

您可以在MSDN上阅读有关“打开文件”对话框的更多信息。

如果我能说清楚的话,请告诉我!