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":
<object Margin="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":
<object Margin="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).
<object Margin="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).