WeifenLuo.WinFormsUI.Docking一些小改动

项目一直在使用这个组件,后来有需求要在拉出来的浮动窗体上显示原来的Icon,还真没这个功能。

网上没有找到解决方法,就自己动手吧。

FloatWindow.cs

在SetText后边加一个SetIcon的方法

protected override void OnLayout(LayoutEventArgs levent)
{
    VisibleNestedPanes.Refresh();
    RefreshChanges();
    Visible = (VisibleNestedPanes.Count > 0);
    SetText();
    SetIcon();
    base.OnLayout(levent);
}
internal void SetIcon()
{
    DockPane theOnlyPane = (VisibleNestedPanes.Count == 1) ? VisibleNestedPanes[0] : null;

    if (theOnlyPane != null && theOnlyPane.Contents.Count > 0)
    {
        Icon = theOnlyPane.Contents[0].DockHandler.Icon;
    }
}

 

posted @ 2018-09-04 09:02  yusufeng  阅读(241)  评论(0编辑  收藏  举报