Страницы

Поиск по вопросам

суббота, 15 февраля 2020 г.

WPF&MVVM: Библиотека System.Windows.Interactivity больше не доступна?

#c_sharp #wpf #xaml #mvvm


В рамках урока по паттерну MVVM для приложений WPF мне нужно было добавить библиотеку
System.Windows.Interactivity.dll через Reference Manager. Я её там не обнаружил (версия
Visual Studio - 2017). На скриншоте ниже - всё, что есть в результатах поиска, начинающееся
с System.Windows:



Я подумал, что возможно данная библиотека уже встроена в новую версию проекта WPF
(хотя в списке уже подключённых ссылок её тоже нет), и когда добавил нижеследующий
код в ApplicationViewModel.cs, никаких ошибок пока что не было отображено средой разработки:

private RelayCommand doubleCommand;
public RelayCommand DoubleCommand {
    get {
        return doubleCommand ??
        (doubleCommand = new RelayCommand(obj => {
            Phone phone = obj as Phone;
            if (phone != null) {
                Phone phoneCopy = new Phone {
                    Company = phone.Company,
                    Price = phone.Price,
                    Title = phone.Title
                };
                Phones.Insert(0, phoneCopy);
            }
        }));
    }
}


Однако, когда я добавил код XAML, то среда выдала сообщение о том, что в пространстве
имён clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity
не существует Interaction, EventTrigger и InvokeCommandAction:





    






Не знаю, каким образом это связано с библиотекой System.Windows.Interactivity, но
как следует решить данную проблему?
    


Ответы

Ответ 1



Требуемая библиотека является частью Microsoft Expression Blend 4 SDK и не включена в стандартную поставку, но вы всегда можете подключить ее из NuGet Gallery: System.Windows.Interactivity.WPF by Microsoft Пользователи Visual Studio 2017 могут установить Microsoft Blend SDK в систему с помощью Visual Studio Installer, для этого на вкладке "Отдельные компоненты" ("Individual components") в разделе "Пакеты SDK, библиотеки и платформы" ("SDKs, libraries, and frameworks") необходимо установить галочку напротив пункта "Пакет SDK для Microsoft Blend для Visual Studio для платформы .NET" ("Blend for Visual Studio SDK for .NET") и нажать кнопку "Изменить". После этого, библиотека System.Windows.Interactivity станет доступна из Reference Manager в разделе Assemblies/Extensions Также, Blend SDK можно загрузить и установить в систему из центра загрузок Microsoft: 3.5, 4.0

Комментариев нет:

Отправить комментарий