Pregunta

tengo un Canvas que contiene algunos Textblocks y necesito encontrar los puntos de las esquinas superior e izquierda que fueron asignados en el documento XAML.¿Cómo puedo conseguir esas dos propiedades?

Cuando recorro los elementos del marco en el Canvas Parece que no puedo encontrar las propiedades enumeradas.

¿Fue útil?

Solución

Aquí algunos ejemplos de cómo obtener los valores:

foreach(FrameworkElement fe in canvas.Children){

   // example 0
   double top=(double)fe.GetValue(Canvas.TopProperty);
   double left=(double)fe.GetValue(Canvas.LeftProperty);

   // example 1
   double top1=Canvas.GetTop(fe);
   double left1=Canvas.GetLeft(fe);

}

Ver http://msdn.microsoft.com/en-us/library/ms749011.aspx yhttp://msdn.microsoft.com/en-us/library/system.windows.controls.canvas.top.aspxpara más información

Otros consejos

Solución elegante

foreach (FrameworkElement fe in Canvas.Children)
         Thickness margin = fe.Margin;

MessageBox.Show("Left: " + margin.Left + "Top: " + margin.Top);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top