2012-04-18 28 views
0

私は、コンテキストメニューを使用しようとしていますし、私はすぐに私は、マウスの右ボタンを押すと、次のエラーを取得:エラー:System.Windows.Style」のプロパティの有効な値ではありません 『のContextMenu』

システム.Windows.Style 'はプロパティ' ContextMenu 'の有効な値ではありません。

XAMLコード:

<UserControl ...> 
    <UserControl.Resources> 
     <ContextMenu x:Key="SharedInstanceContextMenu"> 
      <MenuItem Header="Edit" Command="{Binding Path=EditSelectedItemCommand}"/> 
     </ContextMenu> 

     <Style x:Key="MyItemContainerStyle" TargetType="{x:Type ListViewItem}"> 
      <Setter Property="ContextMenu" Value="{StaticResource SharedInstanceContextMenu}" /> 
     </Style> 
    </UserControl.Resources> 

    ... 

    <ListView ... 
     <ListView.ItemContainerStyle> 
      <Style TargetType="ListViewItem"> 
       <Setter Property="ListBoxItem.IsSelected" Value="{Binding Path=IsSelected}" /> 
       <Setter Property="ContextMenu" Value="{StaticResource MyItemContainerStyle}"/> 

(私は関係のないコードを削除するためにドットを使用)。

誰もエラーを防ぐ方法を知っていますか(そしてコンテキストメニューを見てください)?

ありがとうございます。

答えて

2
<Setter Property="ContextMenu" Value="{StaticResource MyItemContainerStyle}"/> 

MyItemContainerStyleStyle、ないContextMenuです...あなたはおそらく代わりに、これを書く必要があります。

<Setter Property="ContextMenu" Value="{StaticResource SharedInstanceContextMenu}"/> 
+0

を動作するようです...それは、コマンドを起動しませんが(私は削除することもできますダブルセッターbtw)。それとも私が別に質問しなければならない別の質問ですか? –

+1

@MichelKeijzers、はい、別の質問をしてください。コメントよりも答えが簡単です... –

+0

ありがとう、私はそれをします。 –