Sto provando a creare un pannello semplice che contenga un bambino e lo farà scattare alle dimensioni della griglia più vicine. Sto avendo difficoltà a capire come farlo superando MeasureOverride e ArrangeOverride.Hai bisogno di aiuto per capire WPF MeasureOverride e ArrangeOverride infinity e 0 size
Ecco cosa sto cercando: Voglio che il mio pannello dica al suo proprietario che (a) vuole essere il più grande possibile, quindi (b) quando scopre di quale dimensione è, si dimensionerà e il suo UIElement figlio secondo il punto di snap più piccolo più vicino. Quindi, se stiamo eseguendo lo snap a 10, e posso trovarmi in una regione non più grande di 192x184, il pannello dirà al contenitore principale "la mia dimensione effettiva sarà 190x180". In questo modo tutto ciò che si trova al limite del mio controllo sarà in grado di allinearsi ai suoi bordi, al contrario dello spazio potenziale.
Quando inserisco il pannello in una griglia, ottengo 0 o PositiveInfinity (dimentico) per la dimensione in entrata negli override, ma quello che devo sapere è "quanto può essere grande il mio spazio?" non infiniti ..
Parte del problema penso sia ciò che WPF considera i valori magici di PositiveInfinity e 0 per la dimensione. Ho bisogno di un modo per dire, tramite MeasureOverride "Posso essere grande quanto mi concedi" e in ArrangeOverride per ridimensionare effettivamente le dimensioni dello snap.
O sto andando in questo modo completamente sbagliato? Misurare e organizzare sembra molto complicato, solo vagando un po 'nel codice per i pannelli standard in Reflector.