1

MvvmCross N=26 チュートリアルでは、ビューのボタン クリック イベントを介して動的フラグメントがフレームに読み込まれます (以下のコード スニペット)。ただし、ビューではなくビューモデルでクリックイベントを処理する方法を理解しようとしています。ボタンがクリックされた後、ボタンがクリックされたことをどのように確認し、ビューで正しいフラグメントをフレームにロードしますか?

たとえば、FirstView xml に 10 個のフラグメントと 1 つのフレームがあるとします。FirstViewModel で参照されるオブジェクトのプロパティに基づいて、そのフレームにこれら 10 個のフラグメントのいずれかをロードできるようにしたいと考えています。ビューでそのプロパティを確認し、使用可能な 10 個のフラグメントから必要なフラグメントをロードできますか? (つまり、View の but1.Click イベントを削除しても、ViewModel のオブジェクトの値に基づいてトランザクションを実行します)

but1.Click += (sender, args) =>
            {
                var dNew = new DubFrag()
                    {
                        ViewModel = ((SecondViewModel) ViewModel).Sub
                    };
                var trans3 = SupportFragmentManager.BeginTransaction();
                trans3.Replace(Resource.Id.subframe1, dNew);
                trans3.AddToBackStack(null);
                trans3.Commit();
            };
4

1 に答える 1