The hardcoded row heights and column widths in the Start screen example work for certain resolutions, but more work would need to be done to make the UI flexible enough to handle all possible resolutions. This could be done with code-behind that checks the current window size and adjusts values accordingly, but
Grid exposes sophisticated sizing options that can sometimes make such code unnecessary.
ColumnDefinition’s corresponding properties do not default to autosized (
Double.NaN). And unlike almost all other
Width properties, theirs are of type
GridLength rather than
double. This way,
Grid can uniquely support three different types ...