WPF, Image MouseDown Event - PullRequest
       9

WPF, Image MouseDown Event

0 голосов
/ 07 августа 2009

У меня есть элемент управления с событием мыши, когда я хочу изменить изображение при нажатии на изображение. Но я не могу изменить ЛЮБЫЕ свойства изображений в событии.

Событие

    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 Ответ

1 голос
/ 07 августа 2009

Предполагая, что файл находится в вашем приложении, вам нужно использовать Pack URI схему :

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

В приведенном выше примере это указывает на подпапку в вашем проекте Resources / Images.

...