LTRB es la notación corta para recordar fácilmente.
Sai
44
Nota: este es un orden diferente al orden css de html, que es Superior, Derecha, Inferior, Izquierda.
Ruskin
77
¿Alguien tiene alguna idea de por qué decidieron optar por algo diferente de CSS?
Charles Clayton
55
@crclayton - Como escribí; El orden es el mismo que en WinForms. WinForms es el predecesor natural de WPF, por lo que el software (desarrolladores) actualizaría de WinForms a WPF.
Erno
30
Qué tal si. WPF comienza en el oeste. ¿Netscape comienza en el norte? Y obviamente en sentido horario para ambos.
Martin Capodici
33
Hay tres situaciones únicas:
4 números , por ej Margin="a,b,c,d".
2 números , por ej Margin="a,b".
1 número , por ej Margin="a".
4 números
Si hay 4 números , entonces su left, top, right, bottom(un círculo en sentido horario comenzando desde el margen izquierdo medio). El primer número es siempre el "Oeste" como "WPF":
<objectMargin="left,top,right,bottom"/>
Ejemplo: si lo usamos Margin="10,20,30,40"genera:
2 números
Si hay 2 números , entonces el primero es el grosor del margen izquierdo y derecho, el segundo es el grosor del margen superior e inferior. El primer número es siempre el "Oeste" como "WPF":
<objectMargin="a,b"/> // Equivalent to Margin="a,b,a,b".
Ejemplo: si usamos Margin="10,30", el margen izquierdo y derecho son ambos 10, y el superior y el inferior son ambos 30.
1 número
Si hay 1 número , entonces el número se repite (es esencialmente un grosor de borde).
<objectMargin="a"/> // Equivalent to Margin="a,a,a,a".
Ejemplo: si lo usamos Margin="20"genera:
Actualización 2020-05-27
He estado trabajando en una aplicación WPF a gran escala durante los últimos 5 años con más de 100 pantallas. Parte de un equipo de 5 desarrolladores de WPF / C # / Java. Finalmente decidimos usar 1 número (para el grosor del borde) o 4 números. Nunca usamos 2. Es consistente, y parece ser una buena manera de reducir la carga cognitiva cuando se desarrolla.
La regla:
Todos los números de ancho comienzan a la izquierda (el "Oeste" como "WPF") y van en el sentido de las agujas del reloj (si hay dos números, solo van en el sentido de las agujas del reloj dos veces, luego reflejan el resto).
"Si hay 2 números, entonces el primero es el grosor del margen izquierdo y derecho" Pero en el ejemplo, el primer número es 30, y termina siendo el margen superior e inferior.
Peter Bruins
21
Solo porque el comentario de @MartinCapodici es impresionante, escribo aquí como respuesta para dar visibilidad.
Todo en sentido horario:
W PF start W est (izquierda-> arriba-> derecha-> abajo)
norte etscape (es decir, CSS) inicio N orth (arriba-> derecha-> abajo-> izquierda)
Para el segundo ejemplo, "izquierda, arriba", se repite realmente: el primer número se refiere a izquierda y derecha, el segundo a arriba y abajo, vea mi respuesta a continuación.
@amit jha
provisto, mire la sección tituladaXAML Values
para el margen en ese enlace.Respuestas:
También es posible especificar solo dos tamaños como este:
Finalmente puede especificar un tamaño único:
El orden es el mismo que en WinForms.
fuente
Hay tres situaciones únicas:
Margin="a,b,c,d"
.Margin="a,b"
.Margin="a"
.4 números
Si hay 4 números , entonces su
left
,top
,right
,bottom
(un círculo en sentido horario comenzando desde el margen izquierdo medio). El primer número es siempre el "Oeste" como "WPF":Ejemplo: si lo usamos
Margin="10,20,30,40"
genera:2 números
Si hay 2 números , entonces el primero es el grosor del margen izquierdo y derecho, el segundo es el grosor del margen superior e inferior. El primer número es siempre el "Oeste" como "WPF":
Ejemplo: si usamos
Margin="10,30"
, el margen izquierdo y derecho son ambos 10, y el superior y el inferior son ambos 30.1 número
Si hay 1 número , entonces el número se repite (es esencialmente un grosor de borde).
Ejemplo: si lo usamos
Margin="20"
genera:Actualización 2020-05-27
He estado trabajando en una aplicación WPF a gran escala durante los últimos 5 años con más de 100 pantallas. Parte de un equipo de 5 desarrolladores de WPF / C # / Java. Finalmente decidimos usar 1 número (para el grosor del borde) o 4 números. Nunca usamos 2. Es consistente, y parece ser una buena manera de reducir la carga cognitiva cuando se desarrolla.
La regla:
fuente
Solo porque el comentario de @MartinCapodici es impresionante, escribo aquí como respuesta para dar visibilidad.
Todo en sentido horario:
fuente
Ver aquí: http://msdn.microsoft.com/en-us/library/system.windows.frameworkelement.margin.aspx
fuente