关于DotNetBar中Dock变为悬浮窗窗口变小的问题解决办法

最近用DotNetBar做界面,使用到了DotNetBarManager这个工具,做出了类似于VS的界面,但将Bar拖动出来变为悬浮状态的时候,

默认总是为128X128大小的窗口,查找了各种资料各种属性都无法改变大小,即使在BarUndock事件中进行更改大小都不理想,

这么好用的一个控件总不能不用了吧。。。反编译吧,经过凄凄惨惨戚戚上下求索后,在Bar.cs代码中发现了以下代码

System.Drawing.Size size = this.rectangle_3.Size;
            if (!size.IsEmpty)
            {
                return size;
            }
            if (this.genericItemContainer_0.LayoutType == eLayoutType.DockContainer)
            {
                int selectedDockTab = this.SelectedDockTab;
                if ((selectedDockTab >= 0) && (this.genericItemContainer_0.SubItems[selectedDockTab] is DockContainerItem))
                {
                    DockContainerItem item = this.genericItemContainer_0.SubItems[selectedDockTab] as DockContainerItem;
                    return item.DefaultFloatingSize;
                }
                if ((this.genericItemContainer_0.SubItems.Count > 0) && (this.genericItemContainer_0.SubItems[0] is DockContainerItem))
                {
                    DockContainerItem item2 = this.genericItemContainer_0.SubItems[0] as DockContainerItem;
                    return item2.DefaultFloatingSize;
                }
                if (this.genericItemContainer_0.Orientation == eOrientation.Vertical)
                {
                    return new System.Drawing.Size(this.genericItemContainer_0.WidthInternal + 0x10, this.genericItemContainer_0.WidthInternal + 0x10);
                }
                return new System.Drawing.Size(this.genericItemContainer_0.HeightInternal + 0x18, this.genericItemContainer_0.HeightInternal + 0x18);
            }
            return Screen.FromControl(this).WorkingArea.Size;
DockContainerItem是什么鬼?从字面意思上看竟然还有DefaultFloatingSize属性,这不就是默认悬浮大小么。。。

赶紧回到工程中查找这个类的调用,发现真有。。。默认就是128X128.。。。

这个控件就相当于Tab控件中的Tab页标签控件,点击可直接进行编辑即可,好吧,看来还是业务不熟啊,多么简单的解决方式。。。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值