我正在尝试学习MVVM模式的同时学习Xamarin。我不知道这是否是正确的方法,但是我无法将ContentPage绑定到Layout类型的ViewModels属性。
[我正在做的是将一个XML文件解析为许多对象,然后读取它们并将它们转换为View。如果在Views代码中确定ContentPages Contents应该具有此布局,则可以正常工作并显示良好。
我实际上想将内容绑定到我的ViewModels属性。
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:d="http://xamarin.com/schemas/2014/forms/design"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
x:Class="FireSupportReference.View.ChapterView"
Title="{Binding pageTitle}"
x:Name="chapterContentPage"
Content="{Binding pageLayout}">
另一个绑定正在工作(它在Views代码中设置)。 pageLayout属性的类型为Layout。
public Layout pageLayout
{
get { return _layout; }
set { _layout = value; }
}
正如我在其他所有绑定都无法正常工作之前所说的那样,所以我猜测这更多与Im试图绑定的东西以及使用什么属性有关。先谢谢您的帮助。
将布局的类型更改为ContentView
并实现INotifyPropertyChanged
并在设置器中提高INotifyPropertyChanged
[我正在做的是将一个XML文件解析为许多对象,然后读取它们并将它们转换为View。