为什么 x:Bind 期望绑定到一个静态方法?

问题描述

我有一个 UWP MVVM 应用程序,其中我将以下属性绑定到 DataGridComboBoxColumn

public List<ComboBoxValues> ListValues { get; set; } = new List<ComboBoxValues>();

XAML:

xmlns:local="using:MyProject.viewmodels"
    <controls:DataGridComboBoxColumn Header="myHeader"
        Binding="{Binding theSelectedValue,Mode=TwoWay}"
        ItemsSource="{x:Bind local:PageVM.ListValues,Mode=OneWay}"
        displayMemberPath="theValueOptions"/>

我使用依赖注入,在需要时使用 Autofac 生成我的 viewmodel 实例:

var containerBuilder = new ContainerBuilder();
containerBuilder.RegisterType<PageVM>().AsSelf();

我收到错误Static method 'ListValues' not found in type 'PageVM'. 我尝试使用谷歌搜索它,我发现的唯一结果是它不应该那么容易绑定到静态属性等。

为什么 x:bind 需要一个静态方法?我不想使用静态属性/方法

编辑:

页面DataContext 也使用带有代码的 NavigationService 和 viewmodelBinder 设置,但不是代码隐藏页面。 Autofac,IoC 管理这些实例,NavigationService 和 viewmodelBinder。因此,我不知道如何将 XAML 链接到这些实例以使用 x:Bind?

我不想在后面使用代码,因为我试图严格遵守 MVVM。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)