Hi everybody,
I have this XAML
<Border CornerRadius="10" removed="{Binding SelColor, Mode=OneWay}" BorderBrush="Black" BorderThickness="1" Margin="7">
<Rectangle MinHeight="20" MinWidth="180" Fill="Transparent" />
</Border>
<Expander Header="ChooseColor" Expanded="Expander_Expanded" Name="Exp" Collapsed="Exp_Collapsed">
<StackPanel>
<StackPanel Orientation="Horizontal" Margin="2">
<TextBlock Text="R" Foreground="{Binding Foreground}"/>
<Slider removed="{DynamicResource RedSliderGrad}" Minimum="0" Maximum="255" MinWidth="180" Value="{Binding SelColor.Color.R, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ValueChanged="Slider_ValueChanged"/>
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="2">
<TextBlock Text="G" Foreground="{Binding Foreground}"/>
<Slider removed="{DynamicResource GreenSliderGrad}" Minimum="0" Maximum="255" MinWidth="180" Value="{Binding SelColor.Color.G, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ValueChanged="Slider_ValueChanged"/>
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="2">
<TextBlock Text="B" Foreground="{Binding Foreground}"/>
<Slider removed="{DynamicResource BlueSliderGrad}" Minimum="0" Maximum="255" MinWidth="180" Value="{Binding SelColor.Color.B, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ValueChanged="Slider_ValueChanged"/>
</StackPanel>
</StackPanel>
</Expander>
</StackPanel>
and this C# code:
public SolidColorBrush SelColor
{
get { return (SolidColorBrush)GetValue(SelColorProperty); }
set
{
SetValue(SelColorProperty, value);
if (PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs("SelColor"));
}
}
public static readonly DependencyProperty SelColorProperty =
DependencyProperty.Register("SelColor", typeof(SolidColorBrush), typeof(ColorChooser), new PropertyMetadata(new SolidColorBrush(Color.FromArgb(255, 204, 204, 204))));
public ColorChooser()
{
InitializeComponent();
this.DataContext = this;
}
private void Expander_Expanded(object sender, RoutedEventArgs e)
{
}
private void Exp_Collapsed(object sender, RoutedEventArgs e)
{
}
public event PropertyChangedEventHandler PropertyChanged;
private void Slider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
}
I noticed that, as the slider changes, even the SelColor changes, but that changement is not reflected by the background of the border... Why?
Thanks!
Jymmy097