如何在ReadOnly文本框中更改背景/前景色?

时间:2010-07-15 06:35:08

标签: windows-phone-7

在Windows Phone 7中,具有IsReadOnly属性的文本框设置为true,当它运行时(至少在Beta模拟器中),即使背景颜色设置为黑色和前景颜色设置为白色,背景仍然是灰色的前景字符浅灰色。我需要改变这个以便它是可读的!

那么有没有办法覆盖这个?

我已尝试将其设置为文本框加载事件中的其他内容,但它无法正常工作。显然将ReadOnly设置为true可将前/后颜色设置为石头。

如果可以更改颜色,可以使用以下代码来修改颜色:

SolidColorBrush ForeBrush = new SolidColorBrush();
SolidColorBrush BackBrush = new SolidColorBrush();
ForeBrush.Color = Colors.White;
BackBrush.Color = Colors.Black;
txtFrom.Foreground = ForeBrush;
txtFrom.Background = BackBrush;

2 个答案:

答案 0 :(得分:3)

我认为文本框模板包含只读文本框的视觉样式。因此您无法设置其他样式。 但您也可以像其他任何Silverlight控件一样尝试更改文本框的模板:

<TextBox ..>
  <TextBox.Template>
    ...
  </TextBox.Template>
</TextBox>

答案 1 :(得分:0)

您可以在文本框中附加空白ManipulationStarted事件,然后您不必将isreadonly设置为true。这是一个黑客,但将达到目的。