簡體   English   中英

Windows Phone Caliburn Micro HyperLink單擊事件

[英]Windows Phone Caliburn Micro HyperLink click event

我正在將Caliburn Micro用於Windows Phone應用程序。 我有一個超鏈接控件,我想為其將click事件綁定到我的視圖模型。 下面是示例代碼

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
}

當我點擊鏈接時,出現異常

System.Exception:找不到方法的目標

可能是什么問題呢?

更新1:嘗試在超鏈接控件上設置micro:Action.TargetWithoutContext="{Binding ElementName=MyPage, Path=DataContext}" ,但此方法不起作用

為TextBlock命名,並將其用作ElementName,因為您已將超鏈接嵌套到該控件中。 然后Update1應該工作。

嘗試遵循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"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM