0

我有一个包含 textEditor 的 DocumentContent (AvalonDock)。我想在运行时向它添加一个工具栏。为此,我需要添加一个 GridDefinition 以便第一行具有固定高度(用于工具栏),并且文档内容的其余部分应由文本编辑器填充。

我创建了一个新网格并向其添加了行定义并将子项添加到其中,但我不知道如何将其附加到 DocumentContent。我什至不确定这是否是添加工具栏的正确方法。有什么建议么 ?

        Grid grid = new Grid();
        RowDefinition rowDefinition1 = new RowDefinition();
        rowDefinition1.Height = new GridLength(32);

        grid.RowDefinitions.Insert(0, rowDefinition1);
        grid.Children.Insert(0, new IsaDocToolbar());

PS:我忘了说我用的是 AvalonDock 1.3

4

1 回答 1

0

为什么要在代码中执行此操作而不使用 XAML?

这是在 XAML 中使用 MVVM 的基本思想/概念

文档内容应该是一个有 2 行的网格 第 1 行用于工具栏 第 2 行用于文本编辑器

可以使用绑定到布尔属性和使用 BoolToVisibilityConverter 来控制第一行的可见性。

希望这可以帮助。我一直在为应用程序做类似的事情(不是在文档内容上)。您可以查看我的Wide 项目,了解窗口工具栏的类似概念。

于 2013-08-23T04:49:26.453 回答