時には複雑な方法を何度も使用したが、最も簡単な方法を忘れていた。WPFでコマンドをバインドする方法
私はコマンドバインディングを行う方法を知っていますが、私は常に同じアプローチを使用します。
ICommandインターフェイスを実装するクラスを作成し、ビューモデルからそのクラスの新しいインスタンスを作成し、魅力的に動作します。
この
は私がpublic partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
DataContext = this;
testCommand = new MeCommand(processor);
}
ICommand testCommand;
public ICommand test
{
get { return testCommand; }
}
public void processor()
{
MessageBox.Show("hello world");
}
}
public class MeCommand : ICommand
{
public delegate void ExecuteMethod();
private ExecuteMethod meth;
public MeCommand(ExecuteMethod exec)
{
meth = exec;
}
public bool CanExecute(object parameter)
{
return false;
}
public event EventHandler CanExecuteChanged;
public void Execute(object parameter)
{
meth();
}
}
bindingコマンドのために使用されるコードですが、私はこれを行うための基本的な方法を知りたい、何の第三者には、新しいクラスの作成をdllをしません。単一のクラスを使用して、この単純なコマンドバインディングを実行します。実際のクラスはICommandインターフェイスから実装し、作業を行います。
これは間違いなく第三者とみなされます。私はthirsdパーティーに対する恨みを持っていません。私はGalaSoft MVVMを使用していますが、私は単純で基本的な実際の方法を知りたいのです。とにかく、ありがとう。 – MegaMind
質問を実際に読んだことのある唯一の男であることを賞賛しました。 – psycho
@psycho私の痛みを理解する唯一の男であるという建設的なコメント。 :-) – MegaMind