OpenFileDialog会切断预先填充的文件名

Joe*_*ald 9 .net c#

我使用以下内容显示"打开文件"对话框:

OpenFileDialog fdlg = new OpenFileDialog();
fdlg.FileName = Properties.Settings.Default.Last_competition_file;
fdlg.Filter = "FS database files (*.fsdb)|*.fsdb|All files (*.*)|*.*";
fdlg.FilterIndex = 0;
if (fdlg.ShowDialog(this) == DialogResult.Cancel) return false;
Run Code Online (Sandbox Code Playgroud)

(Properties.Settings.Default.Last_competition_file包含最后一个文件的完整路径)

问题:对于文件名"c:\ data \nationals_2014.fsdb",文件名字段仅显示"ionals_2014.fsdb".

单击"文件名"字段并将光标向左移动时,文件名和路径的其余部分将重新显示.但我正在寻找一种方法,使整个文件名从一开始就可见.

请注意,这不是长度问题.我也尝试分别设置路径和文件名(通过OpenFileDialog.InitialDirectory),但即便如此,只显示(现在更短)文件名的尾端.

有什么想法如何让Open File对话框从一开始就显示完整的预先填充的文件名?

TaW*_*TaW 5

警告:这是一个Kludge,而不是一个真正的答案.

  OpenFileDialog fdlg = new OpenFileDialog();
  fdlg.FileName = Properties.Settings.Default.Last_competition_file;
  fdlg.Filter = "FS database files (*.fsdb)|*.fsdb|All files (*.*)|*.*";
  fdlg.FilterIndex = 0;
  fdlg.ShowHelp = true;
  fdlg.HelpRequest +=  new System.EventHandler(HelpRequested); ;
  if (fdlg.ShowDialog(this) == DialogResult.Cancel) return false;

private void HelpRequested(object sender, EventArgs e)
{
    MessageBox.Show(".. is no Help", "There..");
}
Run Code Online (Sandbox Code Playgroud)

Dialog的风格恢复了较旧的化身.

耸肩.一些变通方法让我对很多事情感到好奇......

  • 是的,我可以确认这确实导致OpenFileDialog从头开始显示完整的文件名.大.但风格是如此古老和丑陋,我想我现在会坚持更现代的外观和部分隐藏的文件名... (2认同)