DEV中关于documentManager及dockpanel相关设置

一、相关documentManager在MDI形式下进行页面跳转

documentManager控件会自带有tabbedView选项卡视图

//例如想把formTest页面放进来
formTest form=new formTest();
form.Text = "Test Data";//页面标题
tabbedView1.BeginUpdate();
BaseDocument document = tabbedView1.AddDocument(form);
//document.Footer = "Loading";//页脚等待提示
tabbedView1.EndUpdate();
tabbedView1.Controller.Activate(document);//将活跃页面加载

二、dockpanel在DEV中是存在于dockManager的控件中的,可以在代码中直接声明

//注意:一定要加上BeginUpdate/EndUpdate使控件进行加载,否则会出现dockpanel闪一下的现象
DockPanel dockPanel = new DockPanel();//首先声明代码

dockManager1.BeginUpdate();//控件开始加载
dockPanel = dockManager1.AddPanel(DockingStyle.Right);
dockPanel .Text = "form view";//dockpanel标题名称
dockPanel .Width = (int)(this.Width * 0.2);//宽度
formview frmview = new formview();//dockpanel中需要加载的控件,此处以formview为例
frmview.Text = "form view";
frmview.TopLevel = false;
dockPanel.Controls.Add(frmview);
frmview.Dock = DockStyle.Fill;
frmview.Visible = true;
frmview.FormBorderStyle = FormBorderStyle.None;
dockManager1.EndUpdate();//控件结束加载


//如果有关闭事件,可以使用自带的事件Closed,在此之间简写了一个注册,此处仅供参考
dockPanel.ClosedPanel += (sender, e) =>
            {
                e.Panel.Dispose();
            };

dockpanel已经加载好了,当我们想要拿到dockpanel中的控件时的方法

//上面加载的控件name,注意是name,不是text
Control[] result = this.searchPanel.Controls.Find("formview", true);
if (result.Length > 0)
  {
       var frm = result[0] as formview;
       //此处的frm就是dockpanel中的控件了,如果dockpanel中的控件比较多的话,可以用循环result来判断处理
  }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
是的,你提到的 `Document` 属性是指 `FlowDocumentScrollViewer` 控件的属性,它用于显示流式文档。这个控件不支持直接使用 `DockPanel` 来布局内容。 `FlowDocumentScrollViewer` 使用的是 `FlowDocument` 类型的文档,它具有自己的布局和格式化规则。你可以在 `FlowDocument` 使用一些特定的元素和容器来组织内容,例如 `Section`、`Paragraph`、`BlockUIContainer` 等。 如果你想要在 `FlowDocumentScrollViewer` 使用自定义布局,可以考虑使用更灵活的容器,例如 `Table`、`Grid` 或者 `StackPanel`。这些容器允许你更好地控制内容的布局和排列。 以下是一个示例代码,演示如何在 `FlowDocumentScrollViewer` 使用 `StackPanel` 布局: ```xaml <FlowDocumentScrollViewer> <FlowDocument> <Section> <BlockUIContainer> <StackPanel> <!-- 这里放置你的内容 --> </StackPanel> </BlockUIContainer> </Section> </FlowDocument> </FlowDocumentScrollViewer> ``` 在上述示例,我们在 `FlowDocumentScrollViewer` 创建了一个 `FlowDocument`,并在其使用 `Section` 和 `BlockUIContainer`。然后,我们将 `StackPanel` 放置在 `BlockUIContainer` ,并在其放置你的内容。 请注意,使用 `FlowDocumentScrollViewer` 和 `FlowDocument` 可能需要一些学习和调整,以适应你的具体需求和内容。你可以参考相关的文档和示例来更深入地了解如何使用 `FlowDocument` 来布局和显示你的内容。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值