【发布时间】:2019-10-10 14:12:21
【问题描述】:
我在使用 WinForms Designer 时遇到了各种奇怪的问题,想知道是否有人知道解决方法。我将在这里列出一些症状(以防它们都是同一个问题的症状)。
当我关闭并重新打开表单的设计器时,我的标签页控件被“压缩”到左上角。
似乎受到影响的控件被锚定到底部(有时是左下,有时是右下,但始终包括“底部”)。如果我将控件移动到它们应该在的位置,保存,关闭设计器,然后重新打开它 - 它们都被“压缩”回左上角。
更奇怪的是,某些控件的属性窗格中显示的属性(例如复选框)与 Form.Designer.cs 文件中的内容不匹配(Form.Designer.cs 具有正确的位置值) :
运行我的应用程序时,它显示“压缩”控件并且不反映 Form.Designer.cs 文件中的值(正确)。
最后,有时当我去保存文件时,Visual Studio 会弹出一个“另存为”对话框,好像它不知道文件的实际位置,但随后提示我覆盖完全相同的文件(即使没有变化)。
如果有人对可能导致这些事情的原因有任何想法,那将非常有帮助!我曾尝试调查“文档大纲”窗口以查看是否存在一些奇怪的育儿问题(没有),尝试调整 Form.Designer.cs 文件以修复它(它没有,所以我撤消了这些更改) ,以及其他几件事。
【问题讨论】:
-
您是否尝试重新创建新表单,然后在重新分配事件时复制/粘贴旧控件和代码?
-
@OlivierRogier 还没有尝试过 - 我可以试一试
-
CheckBox 控件的 Anchor 设置为 Left-Bottom,因此它将根据容器的大小更改控件的“位置”。
-
您可以通过将用户控件设计为与其容器中的可用空间相同的大小来避免问题。另外,您的用户控件是否有与调整大小相关的自定义代码?
-
您的问题似乎集中在 UserControl 内部的控件上,但问题在于 UserControl 本身。我会用这些信息更新问题。将“另存为”问题移至新问题。 Stack Overflow 更喜欢一个主题的问题。
标签: c# winforms windows-forms-designer