C# savefiledialog.opendialog()最小化表单
嗨,我只是想知道为什么会这样,我怎样才能阻止它的发生 这是单击导出数据之前的外观 然后它以某种方式最小化了形式? 这是一个中间带有用户控件的Windows窗体。windows窗体设置为C# savefiledialog.opendialog()最小化表单,c#,winforms,savefiledialog,C#,Winforms,Savefiledialog,嗨,我只是想知道为什么会这样,我怎样才能阻止它的发生 这是单击导出数据之前的外观 然后它以某种方式最小化了形式? 这是一个中间带有用户控件的Windows窗体。windows窗体设置为this.WindowState=System.windows.Forms.FormWindowState.Maximized 这是我的SaveFileDialog private void btnExport_Click(object sender, EventArgs e) { M
this.WindowState=System.windows.Forms.FormWindowState.Maximized
这是我的SaveFileDialog
private void btnExport_Click(object sender, EventArgs e)
{
Microsoft.Win32.SaveFileDialog ofd1 = new Microsoft.Win32.SaveFileDialog();
ofd1.Filter = "Database Files (*.sqlite)|*.db";
ofd1.FileName = "dbwaterworks.sqlite";
// customize file dialog properties here
if (ofd1.ShowDialog() == true)
{
var path = Path.GetFullPath(ofd1.FileName);
var destinationCnx = "Data Source=" + path + "; Version=3;";
using (var source = new SQLiteConnection("Data Source=dbwaterworks.sqlite; Version=3;"))
using (var destination = new SQLiteConnection(destinationCnx))
{
source.Open();
destination.Open();
source.BackupDatabase(destination, "main", "main", -1, null, 0);
}
}
else
{
MessageBox.Show("Canceled");
}
}
从@HansPassant comment,将您的主要方法更改为
[STAThread]
static void Main() {
if (Environment.OSVersion.Version.Major >= 6) SetProcessDPIAware();
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1()); // Edit as needed
}
[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern bool SetProcessDPIAware();
如果没有代码,将使它不会最小化很难判断-包括一个最小的完整示例这是由您的计算机上安装的错误外壳扩展导致的。它调用SetProcessDPIAware(),非常顽皮。你可以用SysStudioS的AutoRuns实用程序来追踪它,但是考虑到现在是开始创建DPIAcess程序的时候了。今天非常重要@dlatikay我已经添加了savefiledialog@HansPassant谢谢你的工作