vb.net – 嵌套的SplitContainers会破坏SplitterWidth
所以我有3个分体式容器,每个容器有2个面板.
SplitContainer1是停靠在Form(Parent)中的主要容器. SplitContainer1.Panel1包含停靠的SplitContainer2. SplitContainer1.Panel2包含停靠的SpliContainer3. 到现在为止还挺好. SplitContainer1的SplitterWidth为3. 在Designer中,您可以看到它们之间的SplitterWidth差异,但是当我构建解决方案时,无论我做什么,SplitContainer2和SplitContainer3的SplitterWidth都会重置为4.我已经更改了表单的“InitializeComponent”中的代码而没有任何效果. 我得到这个工作的唯一方法是在窗体的Load Event中,重新指定SplitterWidths,我发现它完全是哑巴.为什么SplitterWidth不会保持在Designer中指定的值? 如果有人能够对此有所了解,那将是多么棒的!! 谢谢你的时间, 彼得
这样就永远不会得不到答案 –
这是一个旧的错误,现在已经在许多版本的Visual Basic中使用,并且永远不会解决(也不可能解决). 正如Hans Passant所提到的,问题是由于SplitContainer的ISupportInitialize实现. 由于它是一个错误,因此没有明确的方法来解决任何符合逻辑的问题. 我在模拟程序中测试过的一种方法是@xfx说 – 以编程方式添加和操作控件,而不是使用工具箱. 另一种方法是以编程方式重新加载SplitterWidth,无论是最可能的Form_Load,还是代码中可能需要的任何其他位置. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |