在c#中改变TextBlock的背景颜色

本文关键字:背景 颜色 TextBlock 改变 | 更新日期: 2023-09-27 18:12:01

目前我正在将一个应用程序移植到Windows Phone 7上,我遇到了一个应该是微不足道的问题

我想要的只是改变TextBlock的背景颜色。使用所见即所得,我可以很容易地创建一个TextBlock,改变前景和背景颜色。所以对于黑色背景白色文字的TextBlock我输入:

<TextBox Height="148" HorizontalAlignment="Left" Margin="106,0,0,0" Name="textBox1" Text="TextBox" VerticalAlignment="Top" Width="460" Background="Black" BorderBrush="Black" Foreground="White" />

但我需要在代码(c#)和背景似乎不是TextBlock的属性。为什么你可以用资源编辑器来做,而不是用代码呢?

我发现了各种类似的问题,但没有明确的答案。在Microsoft文档(.Net)中,TextBlock似乎有一个Background属性

是否有一种方法来做到这一点,而不必把TextBlock内的容器(如网格),其中有背景属性?谢谢司法院

在c#中改变TextBlock的背景颜色

TextBlock不是继承自Control,它没有Background的属性。您显示的代码是TextBox而不是TextBlockTextBox继承自Control并具有Background属性。最简单的方法是用Panel包装它,或者您可以为它创建一个自定义控件。

此外,在silverlight sdk中,您有一个名为Label的控件,它继承自Control。您可能可以从那里获得源代码并在您的项目中实现它。