我有一个带有InlineUIContainer的RTB。我将它们存储在List中,因此我可以直接访问它们。如何在C#中将其从RTB中删除?
代码示例:
// for some TextPointer textPointer in my RTB
TextBlock tb = new TextBlock();
tb.Text = "hello world";
InlineUIContainer inlineUIContainer = new InlineUIContainer(tb, textPointer);
tb_list.Add(inlineUIContainer);
答案 0 :(得分:2)
在这里,你可以像下面一样删除它。如果这是您本地的容器集合:
List<InlineUIContainer> containers = new List<InlineUIContainer>();
并且您要删除列表中第一个的容器:
InlineUIContainer inlineContainer = containers[0] ;
foreach (var block in myRTB.Document.Blocks)
{
if (block is Paragraph)
{
var paragraph = block as Paragraph;
if (paragraph.Inlines.Contains(inlineContainer))
{
paragraph.Inlines.Remove(inlineContainer);
}
}
}