WPF Hyperlink Image - PullRequest
       5

WPF Hyperlink Image

0 голосов
/ 22 июня 2009

В моем приложении я хочу изменить размер изображения большого пальца, когда я нажимаю на него, все изображения находятся в ItemTemplate, где его свойство Source привязано к URL-адресу изображения.

Я пытаюсь что-то вроде этого (это в моем файле DataTemplate)

<TextBlock>
   <Hyperlink TextDecorations="None"
               Command="helpers:StatusesCommands.ShowPicture"
               CommandParameter="{Binding}">
                    <Image Source="{Binding Path=FirstPictureUrl}" Margin="5"   />
   </Hyperlink>
</TextBlock>

Но в обработчике команд я не знаю, как добраться до этого изображения. Свойство OriginalSource для ExecutedRoutedEventArgs установлено в HyperLink, а для Source - мой элемент управления.

Возможно, можно установить CommangParameter для моего вложенного изображения, но я не знаю, как это сделать. У вас есть идеи, как это решить?

1 Ответ

3 голосов
/ 22 июня 2009

Вы связываете параметр команды с контекстом данных, поэтому у вас будет доступ к пути изображения в параметре команды, если вы правильно приведете параметр.

Чтобы передать изображение в качестве параметра команды напрямую, назовите изображение:

<Image x:Name="myImg" Source="{Binding Path=FirstPictureUrl}" Margin="5"/>

Привязать параметр CommandParameter к этому изображению:

CommandParameter="{Binding ElementName=myImg}"

Непонятно, где вы обрабатываете эту команду. Если вы обрабатываете его в коде позади этого XAML, вы можете назвать элемент Image и ссылаться на него по имени в коде файла. Тем не менее, обычно лучше передавать команду в качестве параметра. Иногда команда обрабатывается далеко от места ее запуска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...