代码改变世界!
如果要显示顶级窗口,但又不希望由于将输入焦点从当前窗口移开而中断用户的工作,请使用此属性。它可以是一个信息性弹出窗口或浮动窗口,如“画图”应用程序中的“工具”调色板。
由于此属性为只读,所以只能通过在您自己的窗体中重写 ShowWithoutActivation 并通过编程使其返回 true 来更改此属性的值。
如果非激活的窗口需要使用 UI 控件,您应该考虑使用 ToolStrip 控件,如 ToolStripDropDown。这些控件都是无窗口控件,因此选择它们时不会导致窗口被激活。
1 /// <summary>
2 /// FormWithoutActivation is exactly like a normal form, but doesn't activate (窃取焦点)
3 /// </summary>
4 public class FormWithoutActivation : Form {
5 protected override bool ShowWithoutActivation {
6 get {
7 return true;
8 }
9 }
10 }
以下代码实现:ShowWithoutActivation:如果显示窗口时不将其激活,则为 True;否则为 false。默认为 false。但前提条件:TopMost= false;