我有一个带有两种表单的 C# 应用程序。
第一个是主窗体,应始终打开。
第二个是用户可以启用的预览窗格。
当用户选择显示预览窗格(菜单选项)时,预览窗格将打开。
这就是我想要的。
但是我想防止预览窗格获得焦点。否则,如果用户想要访问菜单(位于主窗体上),他们首先单击,看起来什么也没有发生(但实际上焦点从预览切换到主窗体)。
只有在第二次单击后,他们才能访问菜单。
所以我想我有一个非常简单的解决方案:
如果预览获得焦点,只需将焦点设置到主窗体即可。
但是,我似乎无法从预览窗格访问主窗体。
要显示预览窗格,我只需执行以下操作(在主窗体上):
QRcodeGenerator.QrCodePreview preview = new QRcodeGenerator.QrCodePreview();
preview.show();
我尝试通过执行以下操作(在预览窗口上)将焦点放回主窗体:
private void QrCodePreview_GotFocus(object sender, EventArgs e)
{
QrCodeGenerator.QrCodeSampleApp.focus();
}
但正如所说,我似乎无法访问它。
您需要将主窗体的实例传递给子窗体。因此,在调用 show 之前设置的预览表单上创建一个属性。然后从预览表单的实例访问主表单的实例
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)