Cómo agregar System.Windows.Interactivity al proyecto?

Mi proyecto falta System.Windows.Interactivity . Google dice que tengo que instalar Expression Blend, pero en mi otra computadora tengo esta biblioteca y no tengo instalado Expression Blend. Entonces, debería haber otra forma de obtener System.Windows.Interactivity ? ¿Que debería hacer? (ahora mismo no tengo otra computadora, así que no puedo copiar esta biblioteca 🙂

Está en el SDK de Blend, hay un paquete NuGet para él o puede obtenerlo aquí (no está actualizado).

Hay un nuevo paquete NuGet que contiene el System.Windows.Interactivity.dll que es compatible con:

  • WPF 4.0, 4.5
  • Silverligt 4.0, 5.0
  • Windows Phone 7.1, 8.0
  • Windows Store 8, 8.1

Para instalar Expression.Blend.Sdk, ejecute el siguiente comando en la consola del Administrador de paquetes

PM> Install-Package Expression.Blend.Sdk

http://www.nuget.org/packages/Expression.Blend.Sdk/

La forma más fácil podría ser obtenerlo de NuGet:

http://www.nuget.org/packages/System.Windows.Interactivity.WPF/

A veces, cuando agrega una nueva biblioteca, en introduce una versión System.Windows.Interactivity.dll de System.Windows.Interactivity.dll .

Por ejemplo, la MVVM light MVVM del paquete MVVM light podría requerir v4.2 de System.Windows.Interactivity.dll , pero el paquete NuGet Rx-XAML podría requerir v4.5 de System.Windows.Interactivity.dll . Esto evitará que el proyecto funcione, porque no importa qué versión de System.Windows.Interactivity.dll incluya, una de las bibliotecas se negará a comstackr.

Para solucionarlo, agregue una redirección de enlace de ensamblaje editando su app.config para que se vea así:

               

No se preocupe por cambiar PublicKeyToken , que es constante en todas las versiones, ya que depende del nombre del .dll, no de la versión.

Asegúrese de hacer coincidir la newVersion en su appConfig con la versión real a la que termina apuntando:

enter image description here

Con Blend for Visual Studio , que se incluye en Visual Studio a partir de la versión 2013, puede encontrar el archivo DLL en la siguiente carpeta:

 C:\Program Files (x86)\Microsoft SDKs\Expression\Blend\.NETFramework\v4.5\Libraries 

Sin embargo, deberá agregar la referencia a System.Windows.Interactivity.dll , a menos que use Blend para Visual Studio con un proyecto existente para agregar funcionalidad que haga uso del espacio de nombres de Interactivity. En ese caso, Blend agregará la referencia automáticamente.

Está en MVVM Light, obténgalo de la página MVVM Light Download .

Lo obtuve a través del Prism.WPF NuGet-Package. (incluye Windows.System.Interactivity)

La solución alternativa es modificar su instalación actual de Visual Studio en el instalador de Visual Studio

Win + R %ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vs_installer.exe

agregando la Blend for Visual Studio SDK for .NET ‘componente individual’ en ‘SDK, bibliotecas y marcos’:

enter image description here después de agregar este componente System.Windows.Interactivity debería aparecer en su ubicación habitual Add Reference/Assemblies/Extensions .