Resources use in WPF using VB.NET

In this article, We will see how to use Resources in WPF.
  • 3584
We will use resource in WPF with VB.NET. We can define the styles in WPF XAML files, or perhaps we can manage to accumulate all our useful styles for a particular application in a resource dictionary file. The Resources store reference to an object within a collection. We will use StaticResource in the button. We will use 'Resource Dictionary' throw the StaticResource in the application.

The Application object, Window, Button, and other WPF controls all have a Resources collection. A resource can be anything, such as a Brush to use for painting the background, a control template or many other types of objects.

Two types of resources.
  1. Static Resources
  2. Dynamic Resources

Example:-
This coding of Window1.xaml:-

<Window x:Class="Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300">
    <Grid>
        <Button Style="{StaticResource RedButton}" Content="Demo" Margin="52,21,127,0"
Grid.Row="1" Height="22" VerticalAlignment="Top" />    
       
<Rectangle Margin="52,28,127,17" Name="Rectangle1" Stroke="Black"
              Fill="{StaticResource MyBrush}"/>
    </Grid>
</
Window> 

This coding of Dictionary1.xaml:- We will add a resource dictionary in our application. We have to select the project or folder in Solution Explorer and then right click and select "Add". We will get a menu item called "Resource Dictionary". Clicking on that menu item will popup up the Add New Item wizard with the Resource Dictionary Item template selected. Rename the item as you wish.

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">   
        <LinearGradientBrush x:Key="MyBrush">       
           
<GradientStop Color="Blue" Offset="0"/>     
           
<GradientStop Color="Yellow" Offset="1"/>     
       
</LinearGradientBrush>    
        
<Style x:Key="RedButton" TargetType="{x:Type Button}">
            <Setter Property="Background" Value="Red"/>      
           
<Setter Property="Foreground" Value="Yellow"/>        
           
<Setter Property="Margin" Value="12,3"/>     
           
<Setter Property="Padding" Value="3"/>
            <Setter Property="MinWidth" Value="75"/>
            <Setter Property="MinHeight" Value="34"/>         
       
</Style>         
</ResourceDictionary>

This coding of Application.xaml:-

<Application x:Class="Application"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    StartupUri="Window1.xaml">
    <Application.Resources>
        <ResourceDictionary Source="\\MCNSERVER2\UserProfiles\smalik\My Documents\Visual
Studio 2008\Projects\Resources\Resources\Dictionary1.xaml"/>
    </Application.Resources>
</
Application>
Output:-

Resources.bmp

Categories

More Articles

© 2020 DotNetHeaven. All rights reserved.