用于滑块控件WPF的EventSetter

时间:2014-05-20 10:32:23

标签: c# wpf xaml

尝试为4个幻灯片控件编写一个EventSetter,但它不起作用。 继续给我错误,即'FourthProject.MainWindow'不包含'slider_ValueChanged'的定义,并且没有扩展方法'slider_ValueChanged'接受类型'FourthProject.MainWindow'的第一个参数可以找到(你是否缺少using指令或程序集引用?)

这就是我的尝试:

<EventSetter Event="Slider.ValueChanged"
Handler="slider_ValueChanged" />

以下是

背后的代码

private void slider_ValueChanged(object sender,RoutedPropertyChangedEventArgs e)         {             SolidColorBrush backgroundColor = new SolidColorBrush();             backgroundColor.Color = Color.FromArgb((byte)alphaSlider.Value      (byte)redSlider.Value,(byte)greenSlider.Value,(byte)blueSlider.Value);

        // set colorLabel's background to new color
        colorLabel.Background = backgroundColor;
    }

请帮助我是WPF的新手并且非常困惑。感谢

1 个答案:

答案 0 :(得分:1)

XAML很好:

<EventSetter Event="Slider.ValueChanged" Handler="Slider_ValueChanged"/>

您只需要正确定义处理程序(代码隐藏):

public void Slider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
    MessageBox.Show("Value Changed: " + e.NewValue.ToString());
}

也许您在根元素上设置了DataContext,或者您的事件处理程序不公开。