2

私のアプリケーションは、年を含むUserControl必要があるを開く必要があります。parameter/property今年は、コントロールにいくつかの編集値を表示させます。

Window.Resource私が宣言したセクションcontextmenuに、にアタッチしているがあるという問題が発生していGridviewます。リソース内のこれから、私は私の上にcontextmenu直接バインドすることはできません。CommandsViewModel

ViewModelmyをStaticResourcemyに追加することで、この問題を解決しましたXaml。残念ながら、これにより xaml が ViewModel を生成し、パラメーターまたはプロパティ「年」を渡すことができず、データを取得するときに年 = 0 に対して行われます。

コードで設定したビューモデルにアクセスできるように、コンテキストメニューに提供したビューモデルバインディングを置き換える方法はありますか?

<UserControl.Resources>
    <vm:ViewModel x:Key="viewModel" />

    <ribbon:ContextMenu x:Key="MyContextMenu"
                         x:Shared="False"
                         Placement="MousePoint" >
        <ribbon:Menu Focusable="false">
            <ribbon:Button 
                Command="{Binding Source={StaticResource viewModel}, Path=MyCommand}"
                Label="MyLabel"/>
        </ribbon:Menu>
    </ribbon:ContextMenu>

</UserControl.Resources>
4

1 に答える 1