c# - 最小化/最大化表单会导致在焦点中设置多个组合框。这里发生了什么?
问题描述
我有一个可以使用 Dock 属性在父表单内最小化的表单。输出看起来像这样。
在最大化表单时,会突出显示多个组合框。输出看起来像这样。
通过研究,我发现多个控件不能在 Windows 窗体中同时保持焦点,这让我很好奇为什么会发生这种情况。
资料:
组合框是自定义用户控件。
所有组合框都包含在一个 TableLayoutPanel 中,所有组合框都包含在另一个 TableLayoutPanel 中。到目前为止,我尝试了以下方法无济于事:
- 将 Form ActiveComponent 属性设置为 null
- 将 UserControl ActiveComponent 设置为 null
- 在其中一个组合框上调用焦点
结果:问题解决了,问题依然存在。
删除 TablelayoutPanels 的单个层后,会导致此问题得到解决。我想知道为什么 TableLayoutPanels 的层次结构会影响焦点以及为什么多个控件可以从一开始就成为焦点。
解决方案
推荐阅读
- logic - 如何选择新添加的 ListBox 条目?
- flutter - 如何用 Flutter 处理嵌套的 InkWell?
- c# - 如何在 C# 中获取 Web 浏览器控件的查找对话框?
- meteor - 出现错误:模块 'angular-meteor' 不可用(在 Meteor 1.8.0.1 更新后)
- javascript - 使用eventListener'滚动'后如何修复滚动标题
- java - 如何获取管道中使用的所有 Apache Beam 指标的列表?
- python - Django - 从两个模型中按类别过滤视图
- python - 如何在不重新创建的情况下更改 BarGraphItem 的颜色?
- c++ - 在一个位集中一次设置多个位
- php - php将阿拉伯文与英文字符分开