私はdatapager usercontrolを作成しようとしています。カスタムイベントハンドラにICommandをバインドする
public event EventHandler OnPageIndexPagerChanged;
は、私がメインユーザーコントロールでこのコントロールを使用して、私はこのようなコードの後ろに別のイベントに私のイベントをバインド:このユーザーコントロールは、背後のコードでのイベントを宣言した
XAML:
OnPageIndexPagerChanged="SuperDataPager_OnPageIndexPagerChanged"
C#の(コードの後ろ):
private void SuperDataPager_OnPageIndexPagerChanged(object sender, EventArgs e)
{
var viewModel = DataContext as ViewSchedeConsuntiviViewModel;
if (viewModel != null)
{
viewModel.FilterCommand.Execute(sender);
}
}
そして、これが正常に動作します、しかし、私は、Liを持っているでしょうような何かの背後にあるコードを通過スキップするヒツジシラミバエ:
OnPageIndexPagerChanged="{Binding Path=FilterCommand}"
これを、私はすでに私のメインのユーザーコントロールに存在し、フィルタボタンのために行う、したがって、私は、このイベントのために同じことを行うことができると思いました。しかし、私はエラーが表示されるたびに:
Impossibile assegnareのアラproprietà 'をSuper.Silverlight.SuperDataPager.OnPageIndexPagerChanged'。 [ライン:90 ポジション:55]
'iexplore.exeを'(シルバー):ロード「C:\プログラムファイル(x86の)\マイクロソフト のSilverlight \ 4.0.60531.0それ\ mscorlib.resources \。 DLL」SU System.Windows.Application.LoadComponent(オブジェクトコンポーネント、ウリ resourceLocator)SU Super.Silverlight.SchedeConsuntivi.InitializeComponent()SU Super.Silverlight.SchedeConsuntivi..ctor()該当
イタリア語のエラーのために、私はできませんでした正確な翻訳を取得する - >(プロパティを割り当てることができません...)
誰かがこの現象を私に説明できますか?読書、
ため
おかげでここで[EDIT] は、メインユーザーコントロールのための私の見解モデルである:
public class MyViewModel : DependencyObject, INotifyPropertyChanged
{
public ICommand FilterCommand { get; set; }
public MyViewModel()
{
FilterCommand = new Super.Silverlight.Tools.DelegateCommand<object>(p => Filter());
}
public void Filter()
{
//....blah blah blah...
}
}
[/ EDIT]