11

画像編集アプリケーションがあり、AdornerLayerに追加されるカスタム装飾があります。ユーザーがAdornerをクリックしたときに、それを一番上に移動します。つまり、別の装飾者の上にドラッグした場合、最初のクリックが一番上の装飾者にキャッチされるようにします。

AdornerLayerの子要素のzオーダーを変更する方法がわかりません。それは私がそれらを分類することを可能にしないようです。Adornerを削除して再度追加しても、最上位にはなりません。

4

2 に答える 2

8

同様の問題がありましたが、装飾品の特定の順序が必要でした. 最終的にリフレクションを使用して注文を設定しました。

var setZOrderMethodInfo = adornerLayer.GetType().GetMethod("SetAdornerZOrder", System.Reflection.BindingFlags.NonPublic |  System.Reflection.BindingFlags.Instance);     
setZOrderMethodInfo.Invoke(adornerLayer, new object[] { adorner1, 0 });     
setZOrderMethodInfo.Invoke(adornerLayer, new object[] { adorner2, 1 });

http://social.msdn.microsoft.com/Forums/en/wpf/thread/40bff84e-c4b5-4ea0-87ea-43461df9f24bから

于 2012-09-22T11:31:37.157 に答える
2

Please have a look on that,

http://social.msdn.microsoft.com/forums/en-us/wpf/thread/C6780661-EF6D-4141-B4CA-0C7A2461D314

于 2012-06-28T16:41:25.080 に答える