silverlightコントロールのzインデックスをプログラムで変更するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1802108

  •  05-07-2019
  •  | 
  •  

質問

スタックパネルにプログラムでいくつかのコントロールを追加しました。私がやりたいのは、このスタックパネルのコントロールの1つを別のコントロールの上に配置することです。具体的には、このスタックパネルの画像の上にボタンを配置します。 C#コードビハインドでzindexプロパティが見つかりませんでした。それは非常に単純な問題のようですが、この問題を解決する手がかりを見つけることができません。誰でもください...... ??

役に立ちましたか?

解決

すべてのコントロールをキャンバスに配置してみてください。次に、Zindexを次のように設定できます。

this.controlName.SetValue(Canvas.ZIndexProperty, 10d);

他のヒント

Canvas パネルのみが ZIndex プロパティをサポートします。 Stackpanelは、各アイテムがパネル内で次々に配置されるため、それらが互いに重なってはならないため、そうではありません。これは、以前の仮定が実際に真実ではないため、アイテムを移動するアニメーション化された変換があるときに少し面倒なことがあります。

一般に、ビジュアルスタックにアイテムを配置する必要がある場合、Stackpanelは適切な場所ではありません。おそらく Canvas または Grid を使用できます。この場合、要素の元の位置によって「zorder」が決定されます。セル内。

xamlから:

<StackPanel Canvas.ZIndex="1">
</StackPanel>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top