2012-03-26 4 views
3

Canvasを含むUserControlを使用しています。キャンバスの子供として、アドナーとのコンテンツコントロールがあります。なぜ崇拝者が目に見えないのでしょうか。 すべてが作成され、添付されています。アドナーレイヤーはビジュアルツリーで非常に高いです。 adornerレイヤーは、UserControlの外側に配置されます。Adornerが表示されない

私は、動作する基本的な動きの仕組みを実装しているが、デコレータが決して表示されないため作成されていることを知っています。

デコレータを表示するには何が必要ですか?

+1

を-us/library/ms743737.aspx Adornerは、通常、メソッドオーバーライドOnRenderの内部に実装されています。 これはあなたのやっていることですか? – Klaus78

+1

はい私はそうです。私はついにそれを見つけました。アプリケーションのMainWindowにマージされたリソースディクショナリを追加し、カスタムのusercontrolのリソースだけでなく、adornerも最終的に表示されます。 – Patrik

+0

@patrik私は同じ問題に直面しています。詳細を教えてください... –

答えて

2

デフォルトでWPFウィンドウにはAdornerDecoratorがありますが、usercontrolはありません。だから、あなたは自分のusercontrol.xamlでAdornerデコレータを使ってキャンバスをラップする必要があります。

<AdornerDecorator ClipToBounds="True"> 
      <Canvas x:Name="DesignerCanvas" 
      ClipToBounds="True" 
      SnapsToDevicePixels="True"/> 
</AdornerDecorator> 

さらに詳しい情報:私の知る限り http://msdn.microsoft.com/enから見るようにhttps://social.msdn.microsoft.com/Forums/vstudio/en-US/43a2565d-df21-4cf3-aa2a-240d67662945/please-help-me-resolve-a-mistery-with-resource-adorner-and-usercontrol-a-bug?forum=wpf

関連する問題