これは、 avalon ドックと別のウィンドウでのユーザー コントロールへのフォロー アップの質問です。しかし、コンテキストメニューを変更するのに苦労しています。
私はWPFとavalondockが初めてで、おそらく単純なものですが、見逃しています。
前の質問では、例としてhttp://avalondock.codeplex.com/SourceControl/changeset/view/96370#1749982を指摘されました。「ContextMenuElementが見つかりません」というエラーが表示されたので、もっと簡単なものを選びました:
http://avalondock.codeplex.com/discussions/246250 - これはフランス語のテキストに置き換えることについてですが、私はそれを適応させることができました。私はそれを動作させることができず、コピーペーストをそのままコピーしようとしましたが、それでも同じエラーが発生します:
Cannot find the type ContextMenuElement. Note that type names are case sensitive
リソース ディクショナリでこれを取得し、メニュー項目のコマンド部分を指しています。
<MenuItem Header="Fermer"
Command="avalonDock:DocumentPaneCommands.CloseThis" />
何が欠けていますか?
編集:リソース辞書の抜粋:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:avalonDock="clr-namespace:AvalonDock;assembly=AvalonDock">
<!--Menu contextuel des onglets de l'avalonDock-->
<ContextMenu x:Key="{ComponentResourceKey TypeInTargetAssembly={x:Type avalonDock:DockingManager}, ResourceId={x:Static avalonDock:ContextMenuElement.DocumentPane}}">
<MenuItem Header="Fermer"
Command="avalonDock:DocumentPaneCommands.CloseThis" />
<MenuItem Header="Fermer tout sauf cet élément"
Command="{Binding Path=DataContext.FermerCommand, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"/>
<Separator />