What are resources in WPF ?

Resources are objects referred in WPF XAML. In C# code when we create an object we do the
following three steps :-

using CustomerNameSpace; // import the namespace.
Customer obj = new Customer(); // Create object of the class
Textbox1.text = obj.CustomerCode; // Bind the object with UI elements
WPF Resources

WPF Resources

So even in WPF XAML to define resources which are nothing but objects we need to the above
3 steps :-

  • Import namespace where the class resides: – To define namespace we need to use the “xmlns” attribute as shown in the below XAML code.
<Window x:Class="LearnWpfResources.MainWindow"
Title="MainWindow" Height="350" Width="525">
  • Create object of the class :- To create an object of the class in XAML we need to create a
    resource by using the resource tag as the below code. You can the object name is
<custns:Customer x:Key="custobj"/>

The above code you can map to something like this in C#

Customer custobj = new Customer();
  • Bind the object with UI objects :- Once the object is created we can then bind them using
    bindings like one way , two way.
<TextBox Text="{Binding CustomerCode, Mode=TwoWay, Source={StaticResource
custobj}}" />