无法使用silverlight命名空间

Jos*_*osh 7 silverlight xaml reference

每当我尝试在我的XAML中引用以下命名空间时,代码都会编译并启动项目,但InitializeComponent方法会抛出错误.这是XAML参考:

的xmlns:EI = "http://schemas.microsoft.com/expression/2010/interactions"

这是使用ExtendedVisualStateManager

<ei:ExtendedVisualStateManager/>
Run Code Online (Sandbox Code Playgroud)

错误是这样的:

The type 'ExtendedVisualStateManager' was not found because 'http://schemas.microsoft.com/expression/2010/interactions' is an unknown namespace. [Line: 19 Position: 37]
Run Code Online (Sandbox Code Playgroud)

是否需要使用新的命名空间来使用此控件?

Ant*_*nes 6

这是一些事实.

  1. Microsoft.Expression.Interactions.dll版本4.0.5.0包含命名空间Microsoft.Expression.Interactivity.Core.
  2. Microsoft.Expression.Interactivity.Core包含类型ExtendedVisualStateManager.
  3. Microsoft.Expression.Interactions.dll版本4.0.5.0带有一个XmlnsDefinition将URL" http://schemas.microsoft.com/expression/2010/interactions " 映射到命名空间Microsoft.Expression.Interactivity.Core.

因此,引用版本4.0.5.0的Microsoft.Expression.Interactions.dll的项目可以包含Xaml使用xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions",然后可以包含ei:ExtendedVisualStateManager.

你会注意到我重复了几次版本号.如果您确实在Silverlight 4项目中引用了交互dll,但您的代码不起作用,则可能是错误的版本.但是在那种情况下,丹的答案应该仍然有效.