【发布时间】:2020-12-22 20:36:54
【问题描述】:
我有多种形式。其中之一称为设置,并包含一个带有以下代码的复选框:
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.Checked)
{
this.TopMost = true;
}
else if (!checkBox1.Checked)
{
this.TopMost = false;
}
}
现在,这仅在我使用“设置”表单时有效。一旦我打开另一个表格,例如程序表单(这会关闭设置表单)它不会停留在顶部。通过复选框 ApplicationSettings 属性,如果用户关闭并重新打开“设置”表单,我已经使该复选框保持选中/未选中状态。但这不会使始终在顶部的功能在其他表单上起作用。
选中设置表单中的复选框并关闭复选框表单后,如何使其他表单也保持在其他程序之上?
【问题讨论】:
-
在每个表单加载/打开/创建时检查设置并采取相应措施?
-
为您的项目创建一个 settings.setting 文件,并将选中的值保存在 bool 设置属性中。然后对于每个表单,您可以将 TopMost 属性绑定到该设置。您还可以将此逻辑放在基本表单中,其他表单从它派生。