wpfcontrolssizingactualwidth

Sizing WPF controls to an exact percentage


In WPF, I want set a controls width to be, say, 97% of it's Parent controls ActualWidth property. How can I do this?


Solution

  • You can use Grid panel. E.g:

    <Border>
      <Grid>  
        <Grid.ColumnDefinitions>
         <ColumnDefinition Width="0.97*"/>
         <ColumnDefinition Width="0.03*"/>
        </Grid.ColumnDefinitions>
        <Button Content="97%"/>
        <Border Grid.Column="1" Background="Green">
       </Border>
      </Grid>
    </Border>
    

    Grid will occupy 100% of available border's size. First column will use 97% of it. And the rest 3% are given to border in the second column.

    Hope this helps.

    Cheers, Anvaka