La bibliothèque de la classe ne reconnaît pas le Gestionnaire de commandes de la classe
Je suis de développer des applications WPF et je veux réutiliser mes classes qui sont les mêmes dans toutes ces applications afin que je puisse les ajouter comme référence.
Dans mon cas, j'ai une classe pour mes Commandes:
public class RelayCommand : ICommand
{
#region Fields
readonly Action<object> _execute;
readonly Predicate<object> _canExecute;
#endregion //Fields
#region Constructors
public RelayCommand(Action<object> execute)
: this(execute, null)
{
}
public RelayCommand(Action<object> execute, Predicate<object> canExecute)
{
if (execute == null)
throw new ArgumentNullException("execute");
_execute = execute;
_canExecute = canExecute;
}
#endregion //Constructors
#region ICommand Members
public bool CanExecute(object parameter)
{
return _canExecute == null ? true : _canExecute(parameter);
}
public event EventHandler CanExecuteChanged
{
add { CommandManager.RequerySuggested += value; }
remove { CommandManager.RequerySuggested -= value; }
}
public void Execute(object parameter)
{
_execute(parameter);
}
#endregion //ICommand Members
}
Cela fonctionne parfaitement dans mon application, mais quand je veux faire une bibliothèque de classes qui je tiens juste à ajouter en tant que référence dans mon projet, visual studio ne peut pas se développer, car "Gestionnaire de commandes n'existe pas dans le contexte actuel". Dans mon usage, j'ai de la suite (ce qui devrait être suffisant)
using System;
using System.Windows.Input;
Des idées pourquoi je ne peux pas le faire dans un "projet de bibliothèque de classes" ?
Vous devez vous connecter pour publier un commentaire.
Aller à la "Références" de votre bibliothèque de classe et sélectionnez "Ajouter une Référence". Rechercher une assemblée appelée "PresentationCore" et l'ajouter.
Ensuite dans votre fichier de classe ajouter l'instruction à l'aide
using System.Windows.Input;
Vous pourrez alors accéder au Gestionnaire de commandes que vous attendez.
Simplement d'ajouter: beaucoup de gars quand ils vont créer une bibliothèque de classe, elles sélectionnez "Bibliothèque de contrôles Personnalisés WPF" et puis d'effacer les "Class1.cs de fichier". C'est un raccourci qui ajoute automatiquement le droit d'espaces de noms à votre bibliothèque. Si c'est un bon ou un mauvais raccourci est ce que quelqu'un l'appeler, mais je l'utilise tout le temps.