3

我似乎无法通过 Telerik 糟糕的文档来通过 MVVM 情况进行绑定。我们有标准视图和视图模型。视图模型公开了一个属性“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 上设置断点时,它永远不会被击中。我需要绑定什么属性才能让我的视图模型真正获取文本框的内容?

4

2 回答 2

0

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

    public View(ViewModel viewModel)
    {
        InitializeComponent();

        DataContext = viewModel;
    }

这就是将视图模型连接到视图的方式。

于 2013-09-09T07:30:45.377 回答
0

您是否尝试绑定到; 的Rtf属性telerik:RadRichTextBox?另一件事可能是您的元素的顺序,您可以尝试<telerik:RadRichTextBox在之前声明吗<telerik:DocxDataProvider

也看看 Telerik 论坛上的这个帖子 -

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

于 2012-06-22T18:59:56.987 回答