2

DevExpress WPF コントロールの使用を検討しています。しかし、それらのコントロール (または少なくともグリッド) は、コマンドの代わりにイベントを使用しているようです (MVVM フレンドリーではありません)。

イベントからコマンドへの変換を行ういくつかの方法を見てきました。しかし、それらはすべて私には少しハッキングされているようです。そして、DevExpress Grid の一部に接続すると故障すること を読みました。

Blue-Sky の開発を始めたばかりで、最初から UI をハッキングするのはよくない考えのようです。

DevExpress Grid は MVVM とコマンドで動作しますか? (つまり、私は何かが欠けていますか?)

そうでない場合、Telerikはそうしますか?または、他のコントロール ベンダーはありますか?

現在、私が目にしているのは、それを実行しているように見える唯一のものです。DevExpress が制限されているように見える場合、それらは私の唯一の選択肢ですか?

4

1 に答える 1

1

Telerik は間違いなくコマンドで動作します。ただし、どの WPF コントロールも、System.Windows.Interactivity を使用して動作をコマンドにマップできます。

閲覧する記事 http://www.danharman.net/2011/08/05/binding-wpf-events-to-mvvm-viewmodel-commands/

重要な点は次のとおりです。

xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
...
<DevExpressControl>    
    <i:Interaction.Triggers>        
        <i:EventTrigger EventName="MouseEnter" >
            <i:InvokeCommandAction Command="{Binding FooCommand}" />
        </i:EventTrigger>
    </i:Interaction.Triggers>
</DevExpressControl>

つまり、数行の xaml 行で、イベントをコマンドにバインドします。

于 2012-05-11T23:06:15.700 に答える