Set margins, by changing any existing property value for the margin in code-behind with Thickness class : Margin « Windows Presentation Foundation « C# / CSharp Tutorial






<StackPanel Name="root"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Class="WpfApplication1.FEMarginProgrammatic">
  <StackPanel.Resources>
      <Style TargetType="Button">
        <Setter Property="Height" Value="25"/>
        <Setter Property="Width" Value="250"/>
        <Setter Property="HorizontalAlignment" Value="Left"/>
        <Setter Property="FontSize" Value="20"/>    
      </Style>
  </StackPanel.Resources>
  <Button Click="OnClick" Margin="10" Name="btn1">Click To See Change!!</Button>
</StackPanel>

//File:Window.xaml.cs

using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;

namespace WpfApplication1
{
    public partial class FEMarginProgrammatic {
        void OnClick(object sender, RoutedEventArgs e)
        {
            Thickness marginThickness = btn1.Margin;
            if(marginThickness.Left == 10)
            {
                 btn1.Margin = new Thickness(60);
            } else {
                 btn1.Margin = new Thickness(10);
            }
        }
    }
}
WPF Set Margins By Changing Any Existing Property Value For The Margin In Codebehind With Thickness Class








24.60.Margin
24.60.1.No marginNo margin
24.60.2.The same margin on all four sidesThe same margin on all four sides
24.60.3.Margin: Left,Top,Right,BottomMargin: Left,Top,Right,Bottom
24.60.4.Set margins, by changing any existing property value for the margin in code-behind with Thickness classSet margins, by changing any existing property value for the margin in code-behind with Thickness class
24.60.5.Change the margins of an element that is within a Grid by XAML and programmatic codeChange the margins of an element that is within a Grid by XAML and programmatic code