Windows Phone Caliburn Micro HyperLink点击事件



我正在使用Caliburn Micro的Windows Phone应用程序。我有一个超链接控件,我想绑定点击事件到我的视图模型。下面是示例代码

XAML, MyPage.xaml

<TextBlock>  
<Run>Got to</Run>
<Hyperlink micro:Message.Attach="[Event Click] = [Action OpenAnotherPage]">
My Page</Hyperlink><Run Text="."></Run></TextBlock>

ViewModel MyPageViewModel.cs

public void OpenAnotherPage()
{
// some code
}

当我点击链接时,我得到一个异常

系统。异常:没有找到方法

的目标

有什么问题吗?

更新1:尝试在超链接控件上设置micro:Action.TargetWithoutContext="{Binding ElementName=MyPage, Path=DataContext}",但它不起作用

给TextBlock一个名称,并使用它作为ElementName,因为你有超链接嵌套到该控件中。

尝试以下XAML(未测试):

    <Hyperlink>My Page
        <i:Interaction.Triggers>
            <i:EventTrigger EventName="Click">
                <ec:CallMethodAction TargetObject="{Binding}" MethodName="OpenAnotherPage" />
            </i:EventTrigger>
        </i:Interaction.Triggers>
    </Hyperlink>

命名空间如下(您需要引用这两个程序集,它们是由Microsoft和MS Expression Blend一起提供的)

xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:ec="clr-namespace:Microsoft.Expression.Interactivity.Core;assembly=Microsoft.Expression.Interactions"

相关内容

  • 没有找到相关文章

最新更新