在viewmodel中获取用户控件

时间:2012-12-04 06:18:30

标签: windows-phone-7 mvvm silverlight-4.0 mvvm-light windows-phone-8

在我的应用程序中,我使用内容控件来显示我的用户控件

<ContentControl Content="{Binding LayoutControl}" Grid.Row="0" Height="700" Width="450"/> 

此处绑定内容是具有以下元素的用户控件。

  <Grid x:Name="LayoutRoot" Background="#6C7172">
    <Border BorderBrush="White" BorderThickness="7">
        <Image Source="{Binding ImagePath0}">
            <i:Interaction.Triggers>
                <i:EventTrigger EventName="Tap">
                    <cmd:EventToCommand Command="{Binding Path=ImageTap}" PassEventArgsToCommand="True"/>
                </i:EventTrigger>
            </i:Interaction.Triggers>
        </Image>

    </Border>
</Grid>

在上面的代码中,我试图实现的是,在点击图像时,我需要在我的视图模型中触发相应的事件,但是通过此代码,tap事件不会触发。但是,当我将交互性应用于内容控制时,点击工作正常。我不能简单地将tap事件添加到内容控件,因为我需要处理两个以上Image控件的tap事件。任何人都可以帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

为图像控件提供固定的高度和宽度,然后尝试。它会工作。如果容器装置中没有图像,则鼠标将无法获得点击位置。尝试这个,如果你仍然面临同样的问题,请给我一个反馈。