【发布时间】:2020-07-04 20:49:17
【问题描述】:
我正在尝试将我已启动两个原始视图模型的 MasterViewModel 绑定到一个视图。但我没有得到任何数据,所以我必须做错绑定。我找到了几个帖子
我试过了 在 Xaml 中
<Label
x:Name="SectionRequired"
Grid.Row="2"
HorizontalOptions="End"
IsVisible="{Binding PostViewModel.IsRequired, Source={x:Reference PostViewModel}}"
Text="{x:Static resources:AppResources.AlertRequired}"
TextColor="Red" />
并且也遵循了这个解决方案,但我得到一个 expcetion 其使用的 lika 标记扩展 'local1:PostViewModel' 像标记扩展一样使用,但不是从 MarkupExtension 派生的。
https://stackoverflow.com/questions/50307356/multiple-bindingcontexts-on-same-contentpage-two-different-views
My Master
class MasterPostsViewModel : BaseViewModel
{
public PostViewModel postViewModel { get; set; }
public CategoriesViewModel categoriesViewModel { get; set; }
public MasterPostsViewModel()
{
postViewModel = new PostViewModel();
categoriesViewModel = new CategoriesViewModel();
}
}
}
内容页面
我已将绑定设置为此处的一个字段并且有效,但必须为整个页面执行此操作不是我想要的。
MasterPostsViewModel ViewModel;
protected override void OnAppearing()
{
base.OnAppearing();
BindingContext = ViewModel = new MasterPostsViewModel();
NameRequired.IsVisible = ViewModel.postViewModel.IsRequired;
}
你能帮忙吗
【问题讨论】:
标签: xamarin.forms