Introduction to XAML
page 6 of 9
by Keyvan Nayyeri
Feedback
Average Rating: This article has not yet been rated.
Views (Total / Last 10 Days): 61568/ 160

XAML Attributes

XAML attributes are equivalent to .NET class properties.  You can define attributes inline or explicit.  Explicit definitions help you when your element has several attributes and is getting larger.

Listing 4 shows an inline attribute definition for a Button's Margin attribute and Listing 5 shows an explicit attribute definition for same attribute.

Listing 4

<Button 
  Margin="5">
  Click me!
</Button>

Listing 5

<Button>
  <Button.Margin>5</Button.Margin>
  Click me!
</Button>

Object oriented nature of XAML leads to a behavior that you have seen in HTML before.  Each attribute (which is actually a class property) inherits its parent elements properties or overrides them (if you set that property).

Another key topic in XAML attributes that you should know is Attached Properties.  Some XAML elements get their attributes in other elements and these attributes are named Attached Properties.

For example when you want to use a Grid element (which is very similar to Table in HTML) to lay out your elements, to specify the position of elements in Grid's rows and elements you use Attached Properties.  Each element can get a Grid.Row and Grid.Column which represent the row and column indexes for that element in Grid control.  Listing 6 shows this in action and you can see the output in Figure 2.

Listing 6

<Window x:Class="IntroductionToXAML.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="" Height="94" Width="108"
    >
  <Grid ShowGridLines="True">
    <Grid.ColumnDefinitions>
      <ColumnDefinition Width="50" />
      <ColumnDefinition Width="50" />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
      <RowDefinition Height="30" />
      <RowDefinition Height="30" />
    </Grid.RowDefinitions>
 
    <Label Grid.Column="0" Grid.Row="0">0,0</Label>
    <Label Grid.Column="0" Grid.Row="1">0,1</Label>
    <Label Grid.Column="1" Grid.Row="0">1,0</Label>
    <Label Grid.Column="1" Grid.Row="1">1,1</Label>
  </Grid>
</Window>

Figure 2


View Entire Article

User Comments

Title: Ms   
Name: Poushali Ganguly
Date: 2012-06-20 9:03:36 AM
Comment:
Thanks for this post about XAML! We extensively use in .NET Framework 3.0 & .NET Framework 4.0 technologies owing to its numerous advantages like you have mentioned in your post. To know more, visit http://www.talentica.com or write to me at info@talentica.com
Title: 2012 NFL jerseys   
Name: NIKE NFL jerseys
Date: 2012-05-20 11:29:20 PM
Comment:
[/pre]Cheap NFL,NBA,MLB,NHL
[url=http://www.jersey2shop.com/]Jerseys From China[/url]
[url=http://www.jersey2shop.com/]2012 nike nfl Jerseys[/url]
[url=http://www.jersey2shop.com/]cheap China Jerseys[/url]
[url=http://www.jersey2shop.com/]Sports Jerseys China[/url]
[url=http://www.jersey2shop.com/NFL-Jerseys-c68/]NFL Jerseys China[/url]
[url=http://www.jersey2shop.com/NBA-Jerseys-c77/]NBA Jerseys China[/url]
NHL Jerseys China
[url=http://www.jersey2shop.com/MLB-Jerseys-c94/]MLB Jerseys China[/url]NFL jerseys For Sale online.All Our Jerseys Are Sewn On and Directly From Chinese Jerseys Factory
[/pre]
[pre]We Are Professional China jerseys Wholesaler
[url=http://www.cheapjersey2store.com/]Wholesale cheap jerseys[/url]Cheap mlb jerseys
[url= http://www.cheapjersey2store.com/]2012 mlb all atar jerseys[/url]
[url= http://www.cheapjersey2store.com/ [/url]Cheap China Wholesael[/url]
[url= http://www.cheapjersey2store.com/]Wholesale jerseys From China[/url]
[url=http://www.cheapjersey2store.com/]2012 nike nfl Jerseys[/url]Free Shipping,Cheap Price,7 Days Deliver
[/pre]
[/pre]
We are professional jerseys manufacturer from china,wholesal
sports [url= http://www.cheapjersey2store.com/]Jerseys From China[/url]
[url=http://www.cheapjersey2store.com/NFL-Jerseys-c68]NFL jerseys China[/url]
[url=http://www.cheapjersey2store.com/NHL-Jerseys-c96/]NHL Jerseys China[/url]
[url=http://www.cheapjersey2store.com/NBA-Jerseys-c77/]NBA Jerseys China[/url]
[url=http://www.cheapjersey2store.com/MLB-Jerseys-c94/]MLB Jerseys China[/url]
[url= http://www.cheapjersey2store.com/]China Jerseys[/url],Free Shipping
[/pre]
[/pre]
We are professional jerseys manufacturer from china,wholesal
sports [url= http://www.jerseycaptain.com/]cheap jerseys sale online [/url]
[url= http://www.jerseycaptain.com/]2012 nike nfl Jerseys[/url]
[url=http://www.jerseycaptain.com/NFL-Jerseys-c68]cheap NFL jerseys China[/url]
[url=http://www.jerseycaptain.com/NHL-Jerseys-c96/]NHL Jerseys C
Title: Beginner to xml   
Name: Pradeep
Date: 2012-02-23 9:02:22 AM
Comment:
Thanks !!! .It is very helpful for beginners to know about XAML......
Title: How to add rows programmatically!   
Name: awe
Date: 2009-06-19 8:54:08 AM
Comment:
OK, I found out, it was actually adding correctly, it was just that the container shrimped the grid so all rows became too narrow. I put the grid into a scroll container, and - voilá !
Title: How to add rows programmatically?   
Name: awe
Date: 2009-06-19 8:17:39 AM
Comment:
Just to make it clear: the label, labelEnglish and textBox are labels and textbox that are created and set content on before the code you see.
Title: How to add rows programmatically?   
Name: awe
Date: 2009-06-19 8:15:10 AM
Comment:
I want to be able to add lables and text boxes to the grid content programmatically. How do I do that? I tried with the following code, but it doesn't seem to work. grid (with lowercase g) is the grid object I am working with. Grid (with uppercase G) lets me run the static methods to set column and row number (I didn't find any other way to do this).

grid.RowDefinitions.Add(new RowDefinition());
grid.Children.Add(label);
Grid.SetColumn(label, 0);
Grid.SetRow(label, grid.RowDefinitions.Count - 1);
grid.Children.Add(labelEnglish);
Grid.SetColumn(labelEnglish, 1);
Grid.SetRow(labelEnglish, grid.RowDefinitions.Count - 1);
grid.Children.Add(textBox);
Grid.SetColumn(textBox, 2);
Grid.SetRow(textBox, grid.RowDefinitions.Count - 1);
Title: how to write XAML code for sign in page in silverlight   
Name: ling
Date: 2009-05-18 6:57:58 AM
Comment:
i am quite new to silverlight n XAML..and my project need to create a login,sign up and forget password page.may i know how to write coding for all of dem.
Title: Excellent   
Name: Guru Natesh
Date: 2009-04-14 6:05:06 AM
Comment:
Awesome information abt Xaml for starters
Title: Excellent   
Name: Mr.Gren
Date: 2009-02-04 11:49:38 PM
Comment:
Very Useful for XAML beginners and VS2008 users
Title: Excellent   
Name: JohnA. Blesson
Date: 2009-01-20 2:54:45 AM
Comment:
Very Useful for XAML beginners and VS2008 users
Title: Good   
Name: Palani
Date: 2008-10-23 7:56:26 AM
Comment:
I m interest in ASP.NET. Contact my no 9600478244
Title: Good Article!!   
Name: Tanvir Ehsan
Date: 2008-09-18 4:24:42 AM
Comment:
Thanks Author Keep continuing to such quick learning guide for the beginner!!
Title: Fine   
Name: M.S. Feroz
Date: 2008-09-02 2:09:20 AM
Comment:
Excellent article for beginner. thanks
Title: Good article for biginner   
Name: Bhavesh patel
Date: 2007-04-11 8:47:02 AM
Comment:
Good article for biginner
Title: My point of View Of XAML   
Name: Zaheer Ahmed
Date: 2007-01-20 5:11:49 AM
Comment:
hi i m software engineer and currently i m working on VS.NET 2.0 and i wana switch to 3.0 this article help me to know wht is XAML Thanx
Title: Events in Windows Presentation Foundation   
Name: Keyvan Nayyeri
Date: 2006-12-14 10:22:36 AM
Comment:
Fifth part of these tutorials about Events in Windows Presentation Foundation:
http://aspalliance.com/1088_Events_in_Windows_Presentation_Foundation
Title: Animations in XAML   
Name: Keyvan Nayyeri
Date: 2006-10-25 12:36:09 AM
Comment:
Fourth part of these tutorials about Animations in XAML:
http://aspalliance.com/1050_Animations_in_XAML
Title: Layout in XAML   
Name: Keyvan Nayyeri
Date: 2006-10-09 2:07:52 PM
Comment:
Second part of these tutorials about Layout in XAML:
http://aspalliance.com/1023_Layout_in_XAML
Title: Thanks   
Name: Keyvan Nayyeri
Date: 2006-10-05 1:54:25 AM
Comment:
Thank you. I think I have many items there ;-)
Title: Added to NetFXGuide.com   
Name: Francesco
Date: 2006-10-05 1:43:36 AM
Comment:
Hi, I just added your intro to the XAML Section of NetFXGuide.com (http://www.netfxguide.com/guide/xaml.aspx).

Best,

Francesco
NetFXGuide.com

Product Spotlight
Product Spotlight 





Community Advice: ASP | SQL | XML | Regular Expressions | Windows


©Copyright 1998-2024 ASPAlliance.com  |  Page Processed at 2024-10-15 6:00:28 AM  AspAlliance Recent Articles RSS Feed
About ASPAlliance | Newsgroups | Advertise | Authors | Email Lists | Feedback | Link To Us | Privacy | Search