WPF数据绑定智能感知

Jos*_*ose 9 data-binding wpf intellisense mvvm

好的,所以我对WPF有一个普遍的问题.我在ASP.NET MVC上搞砸了一下,在标记中它在你的viewmodel对象上有智能感知,所以你不要错误输入它(我喜欢它).

输入WPF,我喜欢它,我正在使用MVVM方法和一件烦人的事情,我必须做的是确保我正确绑定到我的viewmodel.所以我在我的xaml中键入了一些东西,然后我要么1)如果我懒惰只是运行应用程序并单击2)如果我不是懒惰a)查看我正在使用的控件的当前DataContext.b)转到ViewModel类查看属性c)找到我的属性,然后单击返回到我的视图并确保我拼写正确.

我相信你可以在运行时查看你的跟踪输出是否有错误的绑定,但是在xaml中是否存在允许intellisense的地平线.View需要知道我的ViewModel,所以为什么不在xaml中公开它.

我认为IDE会为我做这件事很好,这意味着,当我输入"{Binding"时,它应该在可视树上找到第一个非null的DataContext并显示属性,让我选择一个并且你在那里有它.

我错过了什么吗?有没有其他选择.任何见解?

编辑:

关于下面的评论,有一种方法可以在设计时设置datacontext,例如

<Window.Resources>
    <DesignTimeData:DesignTimeCustomers x:Key="designTimeCustomersDS" />
</Window.Resources>
Run Code Online (Sandbox Code Playgroud)

这是博客的一个片段:http: //karlshifflett.wordpress.com/2008/10/11/viewing-design-time-data-in-visual-studio-2008-cider-designer-in-wpf-and- Silverlight的项目/

它所做的就是引用xaml中的一个类.

那么有了这个,设计师就不能利用datacontext上的反射来为你提供该类的所有属性吗?

RAM*_*RAM 6

VS 2013:

具有已解析的DataContext的IntelliSense 在此输入图像描述

具有设计时DataContext的IntelliSense 在此输入图像描述


Liv*_*foi 5

那么有了这个,设计师就不能利用datacontext上的反射来为你提供该类的所有属性吗?

Resharper 6具有此功能,如果在View上设置d:DataContext,则可以在intellisense中向您显示d:DataContext的成员.