WPF uygulamaları geliştiriyorum ve bunları referans olarak ekleyebilmem için tüm bu uygulamalarda aynı olan sınıflarımı yeniden kullanmak istiyorum. Benim durumumdaSınıf kitaplığı, CommandManager sınıfını tanımıyor
benim komutlar için bir sınıf var:
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
}
Bu benim uygulamada mükemmel çalışır, ancak ben sadece benim projede referans olarak eklemek istediğiniz bir sınıf kütüphanesi yapmak istediğinizde Visual Studio "CommandManager geçerli bağlamda yok" nedeniyle yapılamıyor. Benim usings ben
using System;
using System.Windows.Input;
bir "sınıf kitaplığı proje" de bunu yapamaz neden Herhangi fikirleri (yeterli olmalıdır) aşağıdaki mı?
Mükemmel! Teşekkür ederim :) – koala
ve ayrıca class1.cs ipucu için teşekkürler – amaca