SaveFileDialog覆盖提示不在顶部
本文关键字:顶部 提示 覆盖 SaveFileDialog | 更新日期: 2023-09-27 18:17:54
我在c# Windows窗体应用程序中遇到了SaveFileDialog.OverWritePrompt
的小UX问题。当我选择覆盖一个文件时,提示应该出现在顶部,但它没有。但是,正在创建提示符。为了让它出现在顶部,我必须按下Alt键。这是我的代码。我希望你能重现我的错误。
private void ExportImage_Option_Click(object sender, EventArgs e)
{
if (this.Main_PictureBox.Image != null)
{
SaveFileDialog SFD = new SaveFileDialog(this);
SFD.Filter = "Image Files (*.bmp, *.jpg, *.png)|*.bmp;*.jpg;*.png";
SFD.OverwritePrompt = true;
DialogResult Result = SFD.ShowDialog(this);
if (Result == DialogResult.OK)
{
this.Main_PictureBox.Image.Save(SFD.FileName);
}
}
else {
MessageBox.Show("Nothing to export.");
}
}
您需要指定SFD所有者:
DialogResult Result = SFD.ShowDialog(this);
从MSDN: ShowDialog方法的这个版本允许你指定一个特定的窗体或控件,它将拥有显示的对话框。如果你使用此方法的版本没有参数,对话框被显示将由当前活动的自动拥有窗口
详细信息:https://msdn.microsoft.com/en-us/library/9a55b9ds(v=vs.110).aspx
这似乎是我的电脑特有的,因为没有其他人可以重现这个问题。这与代码无关,但更可能与我的系统设置有关。