What is XAML in WPF? Explained with Simple Examples

Image
In this article, we’ll dive into one of the core building blocks of WPF — XAML. We’ll explore how it works and why it plays such an important role in building modern desktop applications. What is XAML? XAML stands for eXtensible Application Markup Language. It’s a markup language used to design the user interface in WPF applications. XAML allows developers and designers to work separately, making the code cleaner and easier to manage. Think of it as HTML for WPF apps. XAML Syntax XAML uses XML-style syntax. Every UI element is an XML tag. Attributes define properties like height, width, and content. You can also nest elements inside others to create more complex layouts. For example, placing a TextBlock inside a Grid layout. <Grid>     <TextBlock Text="Hello, WPF World!"                 Width="200"                 Height="50"              ...

Mastering Modern UI: A Step-by-Step Guide to Creating Metro UI in WPF


To create metro ui you first have to install "Mahapps.metro" from NuGet.To install it right click on project and click on manage NuGet and type Mahapps.metro you will get this package you have to install from here.Now you are ready to create metro ui.Now open you Mainwindow.xaml and add one namespace like bellow
xmlns:Controls="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro" 
and replace Window to Controls:MetroWindow
Now your Mainwindow.xaml become
<Controls:MetroWindow x:Class="ProjectName.MainWindow"
          xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
          xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
          xmlns:Controls="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
          Title="MainWindow"
          Height="600"
          Width="800">

  <!-- your content -->

</Controls:MetroWindow>

Now you have to modify Mainwindow.xaml.cs file in wpf application before it was inherited from Window.Now to make it metro you have to replace Window to MetroWindow like

  public partial class MainWindow :MetroWindow 
 { 
         public MainWindow() 
         { 
               InitializeComponent(); 
         }
}

Now add some Button and run the application it will display window with black
background.To apply metro default style you have to add some resources.
All of MahApp.Metro’s resources are contained within separate resource dictionaries.
In order for most of the controls to adopt the MahApps.Metro theme,you will need to
add the ResourceDictionaries to your App.xaml

<Application x:Class="WpfApplication.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>

<!-- MahApps.Metro resource dictionaries. Make sure that all file names are Case Sensitive! -->
 <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/
   Controls.xaml"/>

<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/
  Fonts.xaml"/>
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/
  Colors.xaml"/>
      <!-- Accent and AppTheme setting -->
   <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml" />
   </ResourceDictionary.MergedDictionaries>
   </ResourceDictionary>
  </Application.Resources>
</Application>

Now if you run the application you will get metro window with default style.
Watch video for more detail




Comments

Popular posts from this blog

Filter DataGrid and ListView in wpf using ICollectionView

Pagination of DataGrid in WPF using MVVM

How to Create TabControl using Prism Region