1

モジュール内にモジュールがあります。「作成」と「編集」の 2 つのリボン ボタンが必要です。これらのボタンはどちらも同じビューとビューモデルを指しています。これらを区別できる唯一の方法は、リボン ボタンのコマンド パラメータ プロパティ部分を使用することです。 Navigate View を使用して View に移動しています。追加のパラメーターを ViewModel コンストラクターに渡し、呼び出しが Create または Edit からのものであることを伝えたいです。何か提案はありますか??

4

3 に答える 3

0

ViewModel に 2 つの異なるコマンドを作成する必要があります。

1- CommandEdit -->CommandProperty button Editバインディングによって割り当て;

2- CommandCreate -->CommandProperty button Createバインディングによって割り当てられます。

恥ずべきコマンドの動作でロジックを共有するのは得策ではありません。

于 2013-11-04T15:57:17.047 に答える
0

私は2 つの異なるボタンをバインドCreateします (例:と ) 。Command の対応する Execute メソッドで、呼び出し元に関する追加の詳細を渡します。EditCommandsCreateCommandEditCommand

サンプルコード:

void CreateCommandExecute(object o)
{
   YourMethod("Create", o);
}

void EditCommandExecute(object o)
{
   YourMethod("Edit", o);
}

void YourMethod(string caller, object commandParameter)
{
   // Your logic goes here
}
于 2013-11-04T17:31:34.600 に答える
0

RibbonButton には Tag プロパティがあります。

http://msdn.microsoft.com/en-us/library/microsoft.windows.controls.ribbon.ribbonbutton.ASPX http://msdn.microsoft.com/en-us/library/system.windows.frameworkelement.tag .ASPX

ボタンを定義するときに、各リボン ボタンの Tag プロパティを設定できます。その後、イベント ハンドラーでタグ値を抽出し、それに応じて対応できます。

于 2013-11-04T16:49:21.797 に答える