C# - 在其他应用程序下显示表单
C# - Show form under other applications
是否可以创建一个始终保留在其他应用程序下的表单?
因为存在以下属性:
this.TopMost = true;
但是没有属性像:
this.BottomMost = true;
每次用户单击表单时,它都不会像往常一样位于顶层,而是保持在其他应用程序下方。然而,当用户按下 show desktop 或 Win + D 时,会显示桌面,但表格位于顶部。
表格显示为一种 Windows 小工具,但它不是小工具,因为在 Windows 10 中它们很难激活。
如果表格不需要一直显示,那么就用这个代码:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.Activated += Form1_Activated;
this.KeyDown += Form1_KeyDown;
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.D && e.Control)
{
Shell32.ShellClass shell = new Shell32.ShellClass();
shell.MinimizeAll();
this.Show();
}
}
private void Form1_Activated(object sender, EventArgs e)
{
this.Hide();
}
}
但是,您需要添加一个名为“Microsoft Shell Controls And Automation”的 COM 引用
此外,您需要将 Form1_KeyDown 更改为以下内容:Global keyboard capture in C# application
是否可以创建一个始终保留在其他应用程序下的表单?
因为存在以下属性:
this.TopMost = true;
但是没有属性像:
this.BottomMost = true;
每次用户单击表单时,它都不会像往常一样位于顶层,而是保持在其他应用程序下方。然而,当用户按下 show desktop 或 Win + D 时,会显示桌面,但表格位于顶部。
表格显示为一种 Windows 小工具,但它不是小工具,因为在 Windows 10 中它们很难激活。
如果表格不需要一直显示,那么就用这个代码:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.Activated += Form1_Activated;
this.KeyDown += Form1_KeyDown;
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.D && e.Control)
{
Shell32.ShellClass shell = new Shell32.ShellClass();
shell.MinimizeAll();
this.Show();
}
}
private void Form1_Activated(object sender, EventArgs e)
{
this.Hide();
}
}
但是,您需要添加一个名为“Microsoft Shell Controls And Automation”的 COM 引用 此外,您需要将 Form1_KeyDown 更改为以下内容:Global keyboard capture in C# application