WPF,Image MouseDown事件

时间:2009-08-07 13:02:03

标签: wpf wpf-controls mouseevent

我有一个带有鼠标按下事件的控件,其中Id喜欢在单击图像时按下图像。但我似乎无法改变事件中的任何图像属性。

事件

    private void Image_MouseDown(object sender, MouseButtonEventArgs e)
    {
        BitmapImage bitImg = new BitmapImage();
        bitImg.BeginInit();
        bitImg.UriSource = new Uri("./Resource/Images/Bar1.png", UriKind.Relative);
        bitImg.EndInit();

        ((Image)sender).Source = null;
        ((Image)sender).Width = 100;
        ((Image)sender).Visibility = Visibility.Hidden;
    }

事件触发,甚至.Visibility属性也不会改变图像并使其隐藏。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

假设文件在您的应用程序中,您需要使用Pack URI scheme

        var img = sender as Image;
        BitmapImage bmp = new BitmapImage(new Uri("pack://application:,,,/Resources/Images/Bar1.png"));
        img.Source = bmp;

在上面的示例中,这将指示您的Resources / Images项目中的子文件夹。