首页 > 解决方案 > Xamarin Forms System.Reflection.TargetInvocationException:“调用的目标已引发异常。”

问题描述

嘿,我是 Xamarin Forms 的新手,我不知何故看不透那个绑定的东西。

这是我设置 BindingContext 的代码:

public MainPage()
{
    InitializeComponent();
    BindingContext = new GameViewModel();
}

这是 ViewModel:

public class GameViewModel
{
    private Team Team1 { get; set; }
    public Team Team2 { get; set; }

    public string Team1Name { get { return Team1.Name; } }
    public string StaticString { get { return "static"; } }

}

StaticString 正在工作,绑定 Team1.Name 没有显示任何内容,并且 Team1Name 正在引发异常。

这是视图:

<StackLayout Orientation="Horizontal">
    <StackLayout Orientation="Vertical">
        <Entry Placeholder="{Binding Team1.Name}" />
        <Label Text="Welcome to Xamarin.Forms!" />
    </StackLayout>
    <StackLayout Orientation="Vertical">
        <Entry Placeholder="{Binding Team1Name}" />
        <Label Text="Welcome to Xamarin.Forms!" />
    </StackLayout>
</StackLayout>

我得到的例外是

System.Reflection.TargetInvocationException: 'Exception has been thrown by the target of an invocation.'

标签: c#xamarin.formsmodel-binding

解决方案


感谢 Jasons 的评论,我发现我忘了初始化 Team 类。不幸的是,我从 Xamarin 收到的错误消息并没有那么有用。


推荐阅读