文本框的背景颜色部分
Background color part of textbox
我一直在尝试为文本块的一部分设置背景颜色。由于 TextBlock 本身没有此功能,我想我应该添加内联。
然而,内联对象(运行、Span,例如)有一个从父 TextBlock 获取值的私有背景字段。
我想我会尝试使用 InlineUIContainer。这是我使用的代码:
Grid grid = new Grid();
grid.Background = new SolidColorBrush(Colors.Red);
TextBlock block = new TextBlock();
block.Text = temp2;
grid.Children.Add(block);
InlineUIContainer iuic= new InlineUIContainer();
iuic.Child = grid;
Parent_TextBlock.Inlines.Add(iuic);
最后一行给出了一个 ArgumentException。有没有办法改变 TextBlocks 背景颜色的一部分?如果是这样,我走对了吗?
可能以下选项可以帮助到您。
您可以使用 RitchTextBox,因为在 WindowsPhone 中 RitchTextBox 是只读的(作为 TextBlock)。
我的快速示例 :) :
<RichTextBox>
<Paragraph>
Some textSome textSome textSome textSome
<Span Foreground="#FF0E0E0E">textSome textSome textSome</Span>
textSome textSome textSome textSome textSome textSome textSome textSome textSome
textSome textSome textSome textSome textSome textSome textSome textSome textSome
<InlineUIContainer> <!-- Look this -->
<Border Background="Blue">
<TextBlock Text="textSome textSome textSome textSome textSome textSome textSome textSome textSome textSome text"/>
</Border>
</InlineUIContainer>
textSome textSome textSome textSome textSome textSome textSome textSome textSome
textSome textSome textSome textSome textSome textSome textSome textSome textSome
</Paragraph>
</RichTextBox>
UPD #1 不要忘记内联文本块的 TextWrapping
我一直在尝试为文本块的一部分设置背景颜色。由于 TextBlock 本身没有此功能,我想我应该添加内联。
然而,内联对象(运行、Span,例如)有一个从父 TextBlock 获取值的私有背景字段。
我想我会尝试使用 InlineUIContainer。这是我使用的代码:
Grid grid = new Grid();
grid.Background = new SolidColorBrush(Colors.Red);
TextBlock block = new TextBlock();
block.Text = temp2;
grid.Children.Add(block);
InlineUIContainer iuic= new InlineUIContainer();
iuic.Child = grid;
Parent_TextBlock.Inlines.Add(iuic);
最后一行给出了一个 ArgumentException。有没有办法改变 TextBlocks 背景颜色的一部分?如果是这样,我走对了吗?
可能以下选项可以帮助到您。
您可以使用 RitchTextBox,因为在 WindowsPhone 中 RitchTextBox 是只读的(作为 TextBlock)。 我的快速示例 :) :
<RichTextBox>
<Paragraph>
Some textSome textSome textSome textSome
<Span Foreground="#FF0E0E0E">textSome textSome textSome</Span>
textSome textSome textSome textSome textSome textSome textSome textSome textSome
textSome textSome textSome textSome textSome textSome textSome textSome textSome
<InlineUIContainer> <!-- Look this -->
<Border Background="Blue">
<TextBlock Text="textSome textSome textSome textSome textSome textSome textSome textSome textSome textSome text"/>
</Border>
</InlineUIContainer>
textSome textSome textSome textSome textSome textSome textSome textSome textSome
textSome textSome textSome textSome textSome textSome textSome textSome textSome
</Paragraph>
</RichTextBox>
UPD #1 不要忘记内联文本块的 TextWrapping