Proyek saya hilang System.Windows.Interactivity
. Google mengatakan bahwa saya harus menginstal Expression Blend, tetapi di komputer saya yang lain, saya memiliki perpustakaan ini dan saya tidak menginstal Expression Blend. Jadi harus ada cara lain untuk mendapatkannya System.Windows.Interactivity
? Apa yang harus saya lakukan? (saat ini saya tidak memiliki komputer lain jadi saya tidak bisa hanya menyalin perpustakaan ini :)
107
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
bukan:xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
seperti dalam setiap contoh lain yang pernah saya lihat.Meskipun masalah ini cukup lama, saya pikir ini adalah berita yang relevan / jawaban terbaru: Perilaku XAML bersumber terbuka Microsoft dan memposting posting blog cara memperbarui ke versi ini: https://devblogs.microsoft.com/dotnet/open -sourcing-xaml-behaviors-for-wpf /
Untuk menghemat satu klik, ini adalah langkah utama untuk bermigrasi:
sumber
Ada paket NuGet baru yang berisi System.Windows.Interactivity.dll yang kompatibel dengan:
Untuk menginstal Expression.Blend.Sdk, jalankan perintah berikut di Package Manager Console
http://www.nuget.org/packages/Expression.Blend.Sdk/
sumber
System.Windows.Interactivity
. Untuk mengatasinya, lihat jawaban saya di atas.Cara termudah untuk mendapatkannya dari NuGet:
http://www.nuget.org/packages/System.Windows.Interactivity.WPF/
sumber
Dengan Blend for Visual Studio , yang disertakan dalam Visual Studio yang dimulai dengan versi 2013, Anda dapat menemukan DLL di folder berikut ini:
Anda harus menambahkan referensi ke
System.Windows.Interactivity.dll
diri Anda sendiri, kecuali jika Anda menggunakan Blend untuk Visual Studio dengan proyek yang sudah ada untuk menambahkan fungsionalitas yang menggunakan namespace Interaktivitas. Dalam hal ini, Blend akan menambahkan referensi secara otomatis.sumber
Terkadang, saat Anda menambahkan perpustakaan baru, dalam memperkenalkan versi bentrok
System.Windows.Interactivity.dll
.Misalnya, paket NuGet
MVVM light
mungkin memerlukan v4.2System.Windows.Interactivity.dll
, tetapi paket NuGetRx-XAML
mungkin memerlukan v4.5System.Windows.Interactivity.dll
. Ini akan mencegah proyek bekerja, karena apa pun versi yangSystem.Windows.Interactivity.dll
Anda sertakan, salah satu pustaka akan menolak untuk dikompilasi.Untuk memperbaikinya, tambahkan Pengalihan Pengikatan Majelis dengan mengedit Anda
app.config
agar terlihat seperti ini:Jangan khawatir tentang mengubah
PublicKeyToken
, itu konstan di semua versi, karena ini tergantung pada nama .dll, bukan versinya.Pastikan bahwa Anda mencocokkan
newVersion
dalam AndaappConfig
dengan versi sebenarnya yang Anda tunjuk pada:sumber
Solusi alternatif adalah mengubah penginstalan Visual Studio Anda saat ini di Penginstal Visual Studio
Win + R
%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vs_installer.exe
menambahkan
Blend for Visual Studio SDK for .NET
'Komponen individual' di bawah 'SDK, pustaka, dan kerangka kerja':setelah menambahkan komponen ini
System.Windows.Interactivity
akan muncul di lokasi biasaAdd Reference/Assemblies/Extensions
.Tampaknya ini hanya akan berfungsi untuk VS2017 atau sebelumnya. Untuk versi yang lebih baru, silakan merujuk ke jawaban lain.
sumber
Ada di MVVM Light, dapatkan dari Halaman Download Light MVVM .
sumber
Install-Package MvvmLightLibs -Version 5.3.0
Saya mendapatkannya melalui Prism.WPF NuGet-Package. (ini termasuk Windows.System.Interactivity)
sumber
Jika Anda bekerja dengan MVVM Light Anda harus menggunakan
System.Windows.Interactivity Version 4.0
(NuGet .dll tidak akan berfungsi) yang dapat Anda temukan di bawah:PathToProjectFolder\Software\packages\MvvmLightLibs.5.4.1.1\lib\net45\System.Windows.Interactivity.dll
Cukup tambahkan .dll ini secara manual sebagai Referensi dan itu akan baik-baik saja.
sumber