使用 TabControl DataTemplate 进行绑定
本文关键字:绑定 DataTemplate TabControl 使用 | 更新日期: 2023-09-27 18:31:08
我正在尝试使用TabControl
来容纳一些视图模型。
<TabControl SelectedIndex="{Binding QuestionIdx, Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged}" ItemsSource="{Binding ProblemsVM}">
<TabControl.ContentTemplateSelector>
<problemSlector:ProblemsViewSelector>
<problemSlector:ProblemsViewSelector.FreeResponseTemplate>
<DataTemplate>
<views:FreeResponseView />
</DataTemplate>
</problemSlector:ProblemsViewSelector.FreeResponseTemplate>
</problemSlector:ProblemsViewSelector>
</TabControl.ContentTemplateSelector>
</TabControl>
。我已经解散并确认(OnDataContextChanged)FreeResponseView
的数据上下文是FreeResponseViewModel
。 此时将显示FreeResponseView
,并且选项卡的标题正确。 但是,在FreeResponseView
中,我有以下行似乎不起作用。
<toolkit:RichTextBox Text="{Binding Question, Mode=OneWay}" />
它不绑定数据源中的Question
。
终于想通了。代码没有错,问题出在RichTextbox
。 我正在使用Xceed Extended WPF RichTextbox
. 事实证明,您必须使绑定为可读和可写,否则绑定不起作用。
<toolkit:RichTextBox Text="{Binding Question}" IsReadOnly="True" />