wpf - español - xaml xamarin




¿Cómo puedo definir y usar una variable en XAML para definir un color? (2)

Tengo una serie de elementos en mi XAML que definen Foreground = "# 555" como el color del texto descolorido en un cuadro de texto de solo lectura.

<TextBlock Text="{Binding SingularModelClassFileTitle}" Margin="0 10 0 0"/>
<TextBox Text="{Binding SingularModelClassFileName}"
         HorizontalAlignment="Left"
         IsReadOnly="True"
         Foreground="#555"
         Width="500"/>
<TextBox 
 VerticalScrollBarVisibility="Visible"
 AcceptsReturn="True"                  
 Width="500" 
 Height="100" 
 IsReadOnly="True" 
 Foreground="#555"
 Text="{Binding SingularModelClassContent}"
 HorizontalAlignment="Left"
 Margin="0 0 0 20"/>

¿Cómo puedo poner este valor en una variable XAML y hacer referencia en cada atributo para que solo tenga que cambiarlo en un lugar?

Estoy pensando que puedes hacer algo como esto :

<sys:String x:Key="ReadOnlyTextColor">#555</sys:String>

...

    <TextBox Foreground="{StaticResource ReadOnlyTextColor}"/>

¿Y cuál sería la propiedad xmlns:sys=... referencia para esto?


A veces puede necesitar definir colores en lugar de pinceles: (un caso que desearía es poder definir Degradados con parámetros de color) En ese caso, podría definirlos así:

 <Color x:Key="ButtonColor1">Blue</Color>
 <Color x:Key="ButtonColor1">#AABBCC</Color>
 <Color x:Key="ButtonColor1" A="00" R="124" G="111" B="44"/>

Intente definir su color como SolidColorBrush :

<SolidColorBrush x:Key="ReadOnlyTextBrush" Color="#555555" />

...

<TextBox Foreground="{StaticResource ReadOnlyTextColor}" />