1

我正在尝试将 TextBox 的 BorderBrush 颜色更改为默认值。查看 ControlTemplate 后,似乎没有指定默认颜色。知道默认颜色是什么吗?

似乎是 ControlTemplate。

我找到了许多 XAML 的示例,但是我需要在代码隐藏中完成,如下所示:

txtValue1.BorderBrush = Brushes.Gray;
4

1 回答 1

4

如果您确实想要该属性的默认值,请调用

txtValue1.ClearValue(Border.BorderBrushProperty);

但这会将属性更改回其初始值(在这种情况下,我猜是黑色或透明)。我不确定,但我想你想要原始颜色给出当前使用的主题。因此,如果您希望清除本地更改,您可以使用GetLocalValueEnumerator并查询所有本地设置属性并找到您要清除值的属性。但是,如果您对正在使用的元素有自定义样式,并且您想从中恢复一个属性,我认为这并不容易。

就此而言,是一本重要的读物。

于 2013-02-20T11:46:01.983 回答