如何将富文本文档内联转换回Label

时间:2013-09-19 18:55:23

标签: c# wpf wpf-controls custom-controls richtextbox

我有一个WPF richtextbox自定义控件。并通过

为Richtextbox段添加了不同的内联
Label curToken = new Label() { Content = curTokenText };
new InlineUIContainer(curToken, insertHere);
tokenList.Add(curToken);

现在我想检索所有内联元素并将它们转换回UIElement(在本例中为Label)。随着所有内联文本。我怎样才能做到这一点。

1 个答案:

答案 0 :(得分:2)

您可以迭代下面的内联来取回标签:

List<UIElement> labels = new List<UIElement>();

foreach (var block in myRTB.Document.Blocks)
{
    if (block is Paragraph)
    {
        var paragraph = block as Paragraph;
        foreach (var inline in paragraph.Inlines)
        {
            if(inline is InlineUIContainer)
            {
    labels.Add(((InlineUIContainer)inline).Child);
            }
        }

    }
}