【发布时间】:2015-02-13 14:29:31
【问题描述】:
请让我在试图理解某些事情时失去理智,我真的需要一些方向,因为我迷路了。
我创建了一个名为 TerminalControl 的 UserControl,它有一个视图,其中包含一个 TextBox,该视图绑定到视图模型中的 Text 属性,该视图通过连接到嵌入式系统的 RS232 实时更新。 所以流程是数据到达 RS232(更新)==> VM.Text ==>(数据绑定)==> TerminalView.TextBox.Text
我只想通过数据绑定将此用户控件添加到 AvalonDock 2.0。
我在停靠管理器所在的窗口中创建了一个数据模板
<avalonDock:DockingManager x:Name="dockManager"
DocumentsSource="{Binding ???}"
Grid.Row="1">
<avalonDock:DockingManager.LayoutItemTemplateSelector>
<vm:PanesTemaplateSelector>
<vm:PanesTemaplateSelector.SessiomDataTemplate >
<DataTemplate>
<Terminal:TerminalEditorView/>
</DataTemplate>
</vm:PanesTemaplateSelector.SessiomDataTemplate>
</vm:PanesTemaplateSelector>
</avalonDock:DockingManager.LayoutItemTemplateSelector>
并在对接中创建文档
<avalonDock:LayoutRoot>
<avalonDock:LayoutPanel Orientation="Vertical">
<avalonDock:LayoutDocumentPane/>
<avalonDock:LayoutAnchorablePane Name="ToolsPane" DockHeight="150">
</avalonDock:LayoutAnchorablePane>
</avalonDock:LayoutPanel>
</avalonDock:LayoutRoot>
</avalonDock:DockingManager>
我有一个创建 TerminalControl 并将 viewModel 返回到 MainWin 视图模型的模块。 我的问题是我不知道应该将 AvalonDock 的 DocumentSource 绑定到什么,如上所示。
我做错了什么? 我的架构有问题吗?
伙计们,任何帮助都将受到高度评价,因为我的想法已经不多了。
谢谢
【问题讨论】:
标签: c# wpf user-controls