通过MVVM绑定Telerik RadRichTextBox

时间:2012-06-22 15:38:52

标签: wpf mvvm telerik richtextbox

我似乎无法通过Telerik的可怕文档来选择通过MVVM情况进行绑定。我们有标准视图和视图模型。 viewmodel公开了一个属性'Body',它应该表示用户正在键入的内容。以下是xaml的相关行:

<telerik:DocxDataProvider 
    x:Name="DocxProvider" 
    RichTextBox="{Binding ElementName=editor}" 
    Docx="{Binding Body, Mode=TwoWay, 
    UpdateSourceTrigger=LostFocus}"   />
<telerik:RadRichTextBox 
    Grid.Row="1" 
    x:Name="editor" 
    Margin="0" 
    AllowDrop="True" 
    ShowComments="False" 
    MinWidth="800" 
    MinHeight="300" 
    MaxWidth="1024" 
    MaxHeight="1200" 
    HorizontalAlignment="Left" 
    HorizontalContentAlignment="Left" 
    Width="790" 
    Padding="20,20,0,20" 
    TabIndex="10"  
    Cursor="IBeam" 
    IsSpellCheckingEnabled="True" >
</telerik:RadRichTextBox>

但是当我在Body上设置一个断点时,它永远不会被击中。我需要绑定什么属性才能使我的视图模型实际获取文本框的内容?

2 个答案:

答案 0 :(得分:0)

您是否尝试过绑定Rtf的{​​{1}}属性;另一件事可能是您的元素的排序,您可以尝试在telerik:RadRichTextBox之前声明<telerik:RadRichTextBox

另请参阅telerik论坛上的这个主题 -

http://www.telerik.com/community/forums/wpf/richtextbox/binding-document.aspx

答案 1 :(得分:0)

您是否记得在xaml.cs文件的构造函数中设置datacontext:

    public View(ViewModel viewModel)
    {
        InitializeComponent();

        DataContext = viewModel;
    }

这就是你将viewmodel连接到视图的方式。