2

这个问题有点微不足道,但我似乎找不到任何标准解决方案。

我有一个表单,根据用户权限显示或隐藏按钮+文本框。现在发生的事情是这样的:

可以看到

这是用户有权查看/使用它的时候。当他不这样做时:

没看到

它不可见 - 简单的部分,但据我发现,只有FlowLayoutPanel提供自动功能来隐藏这个空白空间,而我的情况并非如此。

4

4 回答 4

4

将标签和文本框的Dock属性设置为。Top这样,当按钮和文本框消失时,布局系统会自动将它们向上移动。

于 2013-03-14T14:15:19.860 回答
0

这取决于这是否是您问题的简化版本。如果它只是您所描述的,那么每当您检查权限/隐藏相关控件时,您都可以使用它们的 Top 属性重新定位其他控件。

于 2013-03-14T14:16:21.323 回答
0

将控件包装在 a 中div并将浮动设置为float:none。然后,通过将display 设置为 none 来隐藏div及其内容。例如;divdisplay:none

<div style="display:none;float:none"> content to hide begin here </div>

于 2019-07-22T08:44:18.397 回答
0

嗯,很简单,只要把那个控件的位置改成隐藏控件的位置,在不隐藏隐藏控件的时候重新定位到原来的位置。

btn.location=new point(x,y)

其中x , y是 winforms 中显示的隐藏控件的坐标。

于 2019-11-19T22:04:44.033 回答