gpt4 book ai didi

C#,FormBorderStyle :None Restore Issue

转载 作者:可可西里 更新时间:2023-11-01 14:19:14 26 4
gpt4 key购买 nike

我有一个使用 FormBorderStyle 设置为“无”的表单的应用程序。

问题在于,如果用户点击“显示桌面”按钮(有效地最小化所有打开的窗口),然后从任务栏恢复其中一个表单,所有无边框表单都将恢复。

注意:如果在单击“显示桌面”按钮之前窗体被显式最小化(即 WindowState = FormWindowState.Minimized),那么它会导致该特定窗体的预期行为。

另请注意,对于常规窗体甚至无边框的 WPF 窗口,情况并非如此。

Form.Designer.cs:

this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;

表单.cs:

private void MinimizeButton_Click(object sender, EventArgs e)
{
// If minimized explicitly, form behaves appropriately
WindowState = FormWindowState.Minimized;
}

关于为什么会这样/如何解决它有什么想法吗?

最佳答案

我相信这只是默认行为,因为不应该最小化无边框表单。

查看 this邮政。希望它能帮助您更改此默认行为。

来自帖子(添加到表单):

const int WS_MINIMIZEBOX = 0x20000;
const int CS_DBLCLKS = 0x8;
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.Style |= WS_MINIMIZEBOX;
cp.ClassStyle |= CS_DBLCLKS;
return cp;
}
}

关于C#,FormBorderStyle :None Restore Issue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12324887/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com