如何在Blend for WPF应用程序中使用Visual State Manager?

时间:2009-11-25 19:28:49

标签: wpf expression-blend vsm

创建控件样式时Blend中的模板用于 WPF 应用程序,我想利用Visual State Manager。我该怎么做?

每当我右键单击按钮并选择编辑模板时,创建空...在状态面板中不会显示任何内容。

当我对 Silverlight 应用程序执行相同操作时,典型状态会显示在“状态”面板中。

这有可能在Blend中以某种方式吗?或者我是否必须手动添加所有这些xaml?

2 个答案:

答案 0 :(得分:2)

答案取决于您使用的Blend版本。

在安装了SP1的Blend v2.0中(安装了WPFToolkit),您需要一个注册表项来启用Visual State Manager(VSM)。有关详细信息,请参阅此post。但是在创建新模板时,States面板是空的。

在Blend v3.0中,您不需要棘手的注册表项,但状态面板仍然是空的。这是一个混合论坛post,确认了它的工作原理。

在Blend v4.0中(去下载预览here)...好消息是他们修复了这个!状态显示在States面板和必要的xaml吐出来......如果你修改任何一个州。

注意:

Blend 4创建了Visual Studio 2010解决方案&项目和目标WPF 4.0。您可以随时重新定位到较旧版本的WPF,如果您正在使用它,或者只是复制/粘贴xaml。

答案 1 :(得分:1)

要清楚,使用Blend 3,您必须在计算机上安装WPF工具包作为先决条件。

默认控件使用WPF附带,但是,还没有使用VSM。 WPF应用程序中的主要用例(与Silverlight不同,所有控件都使用States)是UserControls,您可以在其中创建自己的状态组和状态作为控件的一部分。这实际上是非常有用的,而且我不想再活下去了:-)