Today we'll touch the three most lauded concepts introduced by the XAML (eXtensible Application Markup Language). XAML to me seems like XML + .NET. By that I mean XAML provides you the best of both worlds by leveraging descriptive nature of XML and object-oriented nature of .NET. It allows you to instantiate a .NET object like WatermarkedTextbox and describe it properties using pure XML driven syntax, and all that in the Markup. So lets go ahead and explore these three majestic Xaml concepts :
- Property Element Syntax
- Attached Properties
- Markup Extensions
Property Element Syntax
Basically in XAML markup we have three types of element syntaxes
- Object Element Syntax
- Attribute Element Syntax
- Property Element Syntax
To understand them one by one, lets take an example of the a simple WPF control, the TextBlock
<TextBlock Text="Title:" Style="{StaticResource TextBlockStyle}"
Grid.Row="0" Grid.Column="0" HorizontalAlignment="Right"></TextBlock>
Object element syntax refers to the way we have instantiated a .NET object ie TextBlock. Attribute element syntax means to how have used XML attributes (like HorizontalAlignment above) to define that object's properties and given it a value (ie Right). Now assume for a while that we have a TextBlock that displays a custom drawing instead of just plain text. Such TextBlock definition will look like this
<TextBlock Style="{StaticResource TextBlockStyle}" Grid.Row="0" Grid.Column="0" HorizontalAlignment="Right">
<TextBlock.Text>
<Canvas>..Drawing here...</Canvas>
</TextBlock.Text>
</TextBlock>
Property Element syntax pertains the way have defined the TextBlock's property comprehensively (a detailed drawing object) instead of just a word "Title:". So this ability of XAML to support myriad of property definitions is branded by the magic word "Property Element Syntax". Just for the sake of readability we'll cover the next 2 concepts in the subsequent post which can be found here
No comments:
Post a Comment