1

Silverlight 4 Toolkit の ContextMenu を使用する場合、ContextMenu インスタンスの Owner を取得したいのですが、ContextMenu クラスの Owner は内部プロパティであるため、取得できません。たとえば、Border の内側に Rectangle を配置しています。Rectangle を右クリックすると (コンテキスト メニューが表示されます)、たとえば Rectangle が親 Grid の現在の要素であることを示すために、Rectangle Border の太さを変更する必要があります。そのため、ContextMenu を取得する ContextMenu.Loaded イベントを (sender パラメータを介して) 使用しようとしましたが、その ContextMenu の所有者 (つまり、その境界線を持つ Rectangle) を取得できません。そして、ボーダーを太くするには、その所有者が必要です。それを行う方法を見つけるのを手伝ってください。

4

1 に答える 1

1

私が見つけた唯一の解決策は、ContextMenu の DataContext をコード ビハインドから必要な要素に設定することでした。次に、その DataContext プロパティを介してコンテキスト メニューが開かれた要素に対処します。

于 2011-07-12T14:43:22.873 に答える