加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – Windows Phone 8 Viewmodel绑定

发布时间:2020-12-16 01:53:27 所属栏目:百科 来源:网络整理
导读:我正在开发一个 Windows Phone 8项目,我正在做一些我在WPF和WP7中做了很多年的事情,它似乎在Windows Phone 8中不起作用.我创建了另一个项目,并重现了一个更简单的问题形式.我创建了一个新的WP8项目,并执行以下操作: 1)添加一个新类TestVM.cs class TestVM :
我正在开发一个 Windows Phone 8项目,我正在做一些我在WPF和WP7中做了很多年的事情,它似乎在Windows Phone 8中不起作用.我创建了另一个项目,并重现了一个更简单的问题形式.我创建了一个新的WP8项目,并执行以下操作:

1)添加一个新类TestVM.cs

class TestVM : DependencyObject
{
    public string TestProperty
    {
        get { return (string)GetValue(TestPropertyProperty); }
        set { SetValue(TestPropertyProperty,value); }
    }

    // Using a DependencyProperty as the backing store for TestProperty.  This enables animation,styling,binding,etc...
    public static readonly DependencyProperty TestPropertyProperty =
        DependencyProperty.Register("TestProperty",typeof(string),typeof(TestVM),new PropertyMetadata(string.Empty));
}

2)修改App.xaml以便< Application.Resources />看起来像这样:

<!--Application Resources-->
<Application.Resources>
    <local:TestVM x:Key="MainVM" />
    <local:LocalizedStrings xmlns:local="clr-namespace:VMTest" x:Key="LocalizedStrings"/>
</Application.Resources

3)将DataContext =“{StaticResource MainVM}”添加到MainPage.xaml.

启动我的应用程序后,我收到以下异常:

System.Windows.Markup.XamlParseException: Cannot create instance of type 'VMTest.TestVM' [Line: 11 Position: 29]
   at System.Windows.Application.LoadComponent(Object component,Uri resourceLocator)
   at VMTest.App.InitializeComponent()
   at VMTest.App..ctor()

任何人都知道发生了什么事吗?正如我所说,我可以在WP7中做同样的事情,它会正常工作.

解决方法

您无法在XAML中创建未标记为显式公共的对象实例.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读