0

私のビューでは、アイテムのリストを表示しています。そのうちの 1 つは現在アクティブなアイテムです。これらの項目について、Datatemplate を定義しました。現在アクティブなアイテムは、ViewModel のプロパティとして公開されます。

現在アクティブなアイテムを別の背景色で表示したいので、IValueConverter を作成し、Converter パラメータを現在のアイテムにバインドして、実行中のアイテムと比較し、対応するブラシを返します。しかし、コンバーターパラメーターをバインドすることはできないため、失敗しました。

これは実際にはデータ モデルに属していないため、Item クラス (bool IsActive など) にプロパティを追加したくありません。

私が探している結果を達成する方法はありますか?

ビューモデル:

public ObservableCollection<Item> Items {get;set;}
public Item ActiveItem {get; set;}

意見:

<DataTemplate DataType="{x:Type model:Item}">
            <Border Margin="3"
                    BorderBrush="DimGray"
                    BorderThickness="1"
                    CornerRadius="2"
                    Padding="3"
                    Background={Binding ???}
                    >
...
</DataTemplate>
4

1 に答える 1