Получить объект Image от отправителя Родительской кнопки - PullRequest
0 голосов
/ 04 марта 2019

Я хочу получить доступ к объекту Image, содержащемуся в кнопке в моем XAML, например:

        <Button Name ="btn1" Click="ButtonClick">
            <Image x:Name="imgbtn1" Source="/Assets/myImage1.png"/>
        </Button>

В моем разделе кода у меня есть обработчик Click, и я попытался несколько вещей, чтобы попытаться получить объект Imageот отправителя кнопки.Все найденные решения не работают для меня.Вот пример того, что я попробовал:

private void ButtonClick(object sender, RoutedEventArgs e)
{
    Image image = (Image)((Button)sender).Child;
    image.Source = "/Assets/myImage2.png"
}

При этом дочерний элемент выделяется с сообщением об ошибке: «Кнопка» не содержит определения «дочерний элемент».

Как я могу получить свое изображение от отправителя кнопки, или что я делаю не так?

1 Ответ

0 голосов
/ 04 марта 2019

Вы должны использовать Content вместо child.Image присутствует в теге Button означает, что его содержимое не является дочерним.Я изменил ваш код как вам нужно.

<Button Name ="btn1" Click="Button_Click" >
  <Image x:Name="imgbtn1" Source="/Assets/1.jpg"/>
</Button> 

private async void Button_Click(object sender, RoutedEventArgs e)
{            
  Image image = (Image)((Button)sender).Content;
  image.Source = new BitmapImage() { UriSource = new Uri("ms-appx:///Assets/2.png") };
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...