Domanda

Ho alcuni controlli aggiunti in uno stackpanel a livello di codice. Quello che voglio fare è che voglio che uno dei controlli in questo stackpanel sia posizionato su un altro controllo. In particolare, voglio posizionare il pulsante sopra un'immagine in questo pannello dello stack. Non sono riuscito a trovare la proprietà zindex in codebehind c #. Anche se sembra un problema molto semplice, ma non riesco a trovare alcun indizio per risolvere questo problema. Qualcuno per favore ...... ??

È stato utile?

Soluzione

Prova a posizionare tutti i controlli su Canvas. Quindi puoi impostare Zindex con:

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

Altri suggerimenti

Solo il pannello Canvas supporta una proprietà ZIndex . Stackpanel non lo fa perché ogni elemento viene posizionato uno dopo l'altro nel pannello in modo che non si sovrappongano. Questo può essere un po 'noioso a volte quando hai trasformazioni animate che spostano gli oggetti perché il presupposto precedente non è in realtà vero.

In generale, tuttavia, se è necessario posizionare gli oggetti in una pila visiva, Stackpanel non è il posto giusto. Forse un Canvas o potresti usare un Grid dove la posizione oridinale di un elemento determina il suo " zorder " in una cella.

Da xaml:

<StackPanel Canvas.ZIndex="1">
</StackPanel>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top