当Silverlight 5中的TextBox设置为ReadOnly = true
时,背景变为灰色。
我需要它保持白色。
TextBox已启用但设置为只读。它应该是只读的。
在只读模式下,有没有办法让TextBox的背景变成任何颜色?
我试图像这样扩展控件:
public partial class MyTextBox: TextBox
{
private Brush highlightBrush = new SolidColorBrush(Colors.Blue);
private Brush forgoundBrush = new SolidColorBrush(Colors.Black);
private Brush backgroundBrush = new SolidColorBrush(Colors.White);
public BulletListItem()
{
this.applyStyle();
}
private void applyStyle()
{
this.FontSize = 26;
this.Foreground =forgoundBrush;
this.IsEnabled = true;
this.IsReadOnly = true;
this.BorderBrush = backgroundBrush;
this.Background = backgroundBrush;
this.SelectionBackground = backgroundBrush;
this.TextWrapping = System.Windows.TextWrapping.Wrap;
}
}
更新
我找到了一个黑客来做这个,如果有人有更好的解决方案,我仍然会感激,但这就是我的做法。
<Border x:Name="ReadOnlyVisualElement" Background="#5EC9C9C9" Opacity="0"/>
并替换为
<Border x:Name="ReadOnlyVisualElement" Background="White" Opacity="0"/>