Estoy intentando construir un panel simple que contenga un elemento secundario y lo ajustará a los tamaños de cuadrícula más cercanos. Me está costando averiguar cómo hacerlo anulando MeasureOverride y ArrangeOverride.Necesito ayuda para comprender WPF MeasureOverride y ArrangeOverride infinito y 0 tamaños
Esto es lo que estoy buscando: Quiero que mi panel le diga a su propietario que (a) quiere ser lo más grande posible, luego (b) cuando descubra cuál es ese tamaño, se dimensionará y su UIE hijo según el punto de snap más pequeño más cercano. Entonces, si estamos ajustando a 10, y puedo estar en una región no mayor a 192x184, el panel le dirá a su contenedor padre "mi tamaño real será de 190x180". De esta forma, cualquier cosa que limite con mi control podrá alinearse con sus bordes, a diferencia del espacio potencial.
Cuando coloco mi panel dentro de una rejilla, recibo 0 o PositiveInfinity (lo olvido) para el tamaño entrante en las anulaciones, pero lo que necesito saber es "¿qué tan grande puede llegar a mi espacio?" no infinitos ..
Parte del problema, creo que es lo que WPF considera los valores mágicos de PositiveInfinity y 0 para el tamaño. Necesito una forma de decir, a través de MeasureOverride "Puedo ser tan grande como me lo permita" y en ArrangeOverride para ajustar el tamaño al tamaño ajustado.
¿O estoy yendo sobre esto de una manera completamente incorrecta? Medir y organizar se ve muy complicado, solo por deambular un poco en el código de los paneles estándar en Reflector.