我有一个使用MVVM的Xamarin Forms项目,我在其中尝试使用Fody和PropertyChanged.Fody包。无论我尝试什么,它都根本行不通。我花了整整一天的时间使用PropertyChanged.Fody搜索项目示例,但找不到任何实际有效的示例示例代码。有人可以帮我吗?谢谢。
我已经将Fody和PropertyChanged.Fody nuget添加到了项目中。
我已经将FodyWeavers.xml文件添加到Forms项目中,看起来像...
<?xml version="1.0" encoding="utf-8"?>
<Weavers>
<PropertyChanged />
</Weavers>
我的观点是标准的ContentPage ...
<ContentPage.BindingContext>
<viewmodels:GetStartedViewModel />
</ContentPage.BindingContext>
<ContentPage.Content>
<StackLayout >
<Entry Text="{Binding TestMessage}" TextColor="Lime" FontSize="20" />
</StackLayout>
</ContentPage.Content>
我曾尝试以两种方式在ViewModel上实现PropertyChanged.Fody,但这两种方式均无法正常工作。
1)
public class GetStartedViewModel : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
public string TestMessage { get; set; }
}
2)
[AddINotifyPropertyChangedInterface]
public class GetStartedViewModel
{
public string TestMessage { get; set; }
}