Skip to main content


Showing posts with the label ItemsControl

DataTemplating Overview

DataTemplate is a very powerful concept which allows you to provide a visualization for your objects in your application. DataTemplate objects are very useful specially dealing with collections. If you bind your collection with any of the ItemsControl, say ListBox then by using a DateTemplate one can change the appearance of data objects very easily. Well, now let's create a DataTemplate quickly. Let's start by creating a class called Employee: FirstName and Age will be our business objects that will reside in our application. Now we will go ahead and show the value of these objects on screen in a WPF application. For that our XAML will look like: Now looking at the code-behind: In code-behind, we have set the values for FirstName and Age with DataContext of main window. So, that XAML can bind to these values via EmployeeDetail property. At this point of time, if you will run the application, you will see: By above image yo

Formatting strings in binding

Recently I get a chance for a code walk through of an WPF application in order to achieve better performance. So, during my review process, I came across this below code snippet:   <WrapPanel>         <TextBlock Text="{Binding Path=FirstName,Mode=OneWay}"/>         <TextBlock Text=" "/>         <TextBlock Text="{Binding Path=LastName,Mode=OneWay}"/>     </WrapPanel> If you will closely analyze this given snippet, you will definitely get a way to optimize it. Well, I am talking  about formatting the string as well as binding part. As most of you are aware that we have a property named StringFormat since .Net 3.5 SP1. So, why can't we use this StringFormat for our binding too. If you want to change the above code to incorporate StringFormat , then it will something look like: <WrapPanel>         <TextBlock>                 <TextBlock.Text>                     <MultiBinding String