在我的应用程序中,我想在单击它时调整Thumbinal Image的大小,所有图像都在ItemTemplate中,其Source属性绑定到url to picture。

我尝试这样的事情(这是在我的DataTemplate文件中)

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

但在Command处理程序中我不知道如何获取此图像。 ExecutedRoutedEventArgs上的OriginalSource propoerty设置为HyperLink,Source设置为我的控件。

也许可以将CommangParameter设置为我的嵌套Image,但我不知道该怎么做。你知道如何解决这个问题吗?

有帮助吗?

解决方案

您正在将命令参数绑定到数据上下文,因此如果正确转换参数,您将可以访问命令参数中的图像路径。

要直接将图像作为命令参数传递,请先命名Image:

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

将CommandParameter绑定到此图像:

CommandParameter="{Binding ElementName=myImg}"

目前尚不清楚处理此命令的位置。如果您在此XAML的代码后面处理它,您可以命名Image元素并在代码隐藏文件中按名称引用它。但是,通常更好的做法是将您需要的内容作为参数传递给命令。有时命令的处理远离触发命令的位置。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top