2

MvxItemTemplateを使用してMvxBindableListViewにバインドされたアイテムのリストがあります。私は通常、リストに4つのアイテムをビューにバインドしています。データが更新され、ビューに新しいデータが正常に表示されますここに画像の説明を入力してください

ここで、このアイテムテンプレートに2つのボタンを追加します。ただし、相対ソースバインディングはMvvmCrossでは使用できません。(画像を参照)

しかし、私はこれに対する解決策を見つけるのに苦労しています。

リストアイテムのItemClickバインディングを試しましたが、クリックの可能性は1つしかなく、2つ必要です。

誰か助けてもらえますか?

4

1 に答える 1

4

MvxBindableListView内でViewModelを変更するMVVMCrossの回答の2番目のオプションを参照してください。これは、これを行う1つの方法をカバーしています。

このアプローチを使用すると、次のようなオブジェクトのリストを公開できます。

public class Wrapped
{
    public ICommand GoThruCommand { get; set; }
    public ICommand OpenCommand { get; set; }
    public string Name { get; set; }
}

そして、次のようなバインドされたコントロールを持つaxmlリストテンプレートを使用します。

<TextView
    ...
    local:MvxBind="{'Text':{'Path':'Name'}}" />

<Button
    ...
    local:MvxBind="{'Click':{'Path':'GoCommand'}}" />    

<Button
    ...
    local:MvxBind="{'Click':{'Path':'ThruCommand'}}" />    

mvxの相対ソースに関する提案/リクエストがある場合は、https://github.com/slodge/MvvmCross/issues/35に追加してください。

于 2013-01-08T07:36:17.230 に答える