|
#region Author
//// Yevhen Bobrov, http://blog.xtalion.com
#endregion
using System;
using System.Linq.Expressions;
using System.Windows.Input;
namespace Sample.Silverlight.WCF.Infrastructure
{
public class ViewModelCommandBuilder
{
readonly ViewModelBase viewModel;
public ViewModelCommandBuilder(ViewModelBase viewModel)
{
this.viewModel = viewModel;
}
public ICommand For(Expression<Action> expression)
{
var methodCall = (MethodCallExpression)expression.Body;
return new ViewModelCommand(viewModel, methodCall.Method,
viewModel.GetType().GetProperty("Can" + methodCall.Method.Name));
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.