How to say XAML <Button Height="Auto"/> in code behind?

Edward Tanguay picture Edward Tanguay · Sep 30, 2009 · Viewed 20.8k times · Source

How can you set Height="*" and Height="Auto" in code behind?

Answer

Noldorin picture Noldorin · Sep 30, 2009

For setting Height = "Auto" on most controls, you want to assign the value with double.NaN.

Example:

element.Height = double.NaN;

Setting Width/Height = "*" ( is a slightly different matter, since it only applies to a select few elements (ColumnDefinition and RowDefinition for example). The type of the Width/Height value is GridLength, rather than double.

Example (more are given on this MSDN page:

column1.Width = new GridLength(1, GridUnitType.Auto); // Auto
column2.Width = new GridLength(1, GridUnitType.Star); // *