x:Arguments Xamarin.Forms

时间:2018-11-19 12:52:38

标签: c# xaml xamarin xamarin.forms

我正在研究MasterDetailPage。在MasterDetailPage.Master部分中,我手动创建了ListView。但是在MasterDetailPage.Detail中,我使用的是其他类型Page的{​​{1}}。

TabbedPage

在页面顶部声明的<MasterDetailPage.Detail> <NavigationPage> <x:Arguments> <local:HomePage2 /> </x:Arguments> </NavigationPage> </MasterDetailPage.Detail> 变量。视图中有local个文件

HomePage2

代码xmlns:local="clr-namespace:TestProjectXamarin.View" 显示编译错误

  

字典中不存在给定的键

这是HomePage2文件 <local:HomePage2 />

.cs

public partial class HomePage2 : TabbedPage { public HomePage2(string btnName) { InitializeComponent(); Title = "Home Page"; //BindingContext = new HomePageViewModel(); } }

.xaml

如果我使用内置<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:views="clr-namespace:TestProjectXamarin.View" x:Class="TestProjectXamarin.View.HomePage2"> <TabbedPage.Children> <NavigationPage Title="Games" Icon="games"> <x:Arguments> <views:GamesTab/> </x:Arguments> </NavigationPage> <NavigationPage Title="Movies" Icon="camera"> <x:Arguments> <views:MoviesTab /> </x:Arguments> </NavigationPage> </TabbedPage.Children> </TabbedPage> 模板创建Xamarin.Forms项目,则可以使用相同类型的代码。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

最可能的原因是缺少无参数构造函数

鉴于您似乎没有使用参数,建议您更改:

public HomePage2(string btnName)

收件人:

public HomePage2()