Silverlight 4 RichTextBox-InlineUiContainers已禁用

Silverlight 4 RichTextBox-InlineUiContainers已禁用,silverlight,richtextbox,Silverlight,Richtextbox,我一直在饶有兴趣地关注着这个问题。它给了我很多功能,比如格式化、剪贴板支持、打印等 该示例还允许通过使用插入数据网格 我的问题是,插入的DataGrid被禁用,而我的要求是用户可以编辑DataGrid的内容 如何使插入RichTextBox的InlineUiContainers处于启用状态?RichTextBox必须为只读,才能使控件响应事件。我通过使RichTextBox在默认情况下为只读,然后在焦点上变为可编辑来解决这个问题 我的问题是在DataGrid中有RichTextbox,每个Ric

我一直在饶有兴趣地关注着这个问题。它给了我很多功能,比如格式化、剪贴板支持、打印等

该示例还允许通过使用插入数据网格

我的问题是,插入的DataGrid被禁用,而我的要求是用户可以编辑DataGrid的内容


如何使插入RichTextBox的InlineUiContainers处于启用状态?

RichTextBox必须为只读,才能使控件响应事件。我通过使RichTextBox在默认情况下为只读,然后在焦点上变为可编辑来解决这个问题

我的问题是在DataGrid中有RichTextbox,每个RichTextbox中都嵌入了其他控件。这听起来不像你的RTB可以永远是焦点外的只读,因为只有一个RTB


您必须考虑一些策略,在某些情况下将RTB置于只读模式。

我遇到了同样的问题,但在网上找不到任何答案

这就是我所做的,有点难看,但它起作用了:

创建自定义控件并将数据网格放入其中。 将以下代码添加到自定义控件:

    public CustomControl()
    {
        InitializeComponent();


        this.IsEnabledChanged += EnableChanged;
    }

    private int counter = 0;
    private void EnableChanged(object sender, DependencyPropertyChangedEventArgs e)
    {
        if (counter == 0)
        {
            this.IsEnabled = (bool) e.OldValue;
            counter = 1;
            return;
        }
        counter = 0;
    }
祝你好运