Tadeu Torquato » Blog Archive » Um pouco de XAML

Um pouco de XAML

xamllogo XAML (pronuncia-se zammel) – eXtensible Application Markup Language. É baseada em XML foi criada pela Microsoft e é fundamental para o desenvolvimento de aplicações WPF – Windows Application Foundation e aplicações Silverlight.

Para se programar nessa linguagem é necessário ter instalado o .Net Framework 3.5 e um simples editor de texto (bloco de notas) dar inicio escrever códigos em XAML. Não irei me aprofundar no assunto, pois já é um termo muito visto em diversos blogs e sites voltados para desenvolvimento de aplicações WPF e que pode ser facilmente encontrada pelas ferramentas de pesquisa na WEB.

Um bom editor que está disponível para download é o Kaxaml, outra opção é usar o XamlPad que acompanha o SDK .Net Framework.

Abaixo coloquei apenas algumas brincadeiras que podem ser feitas com essa linguagem sem a necessidade de se introduzir código C# ou VB.NET para que funcione. Faça um teste, copie e cole em um arquivo de texto e salve com a extensão “.xaml”, abra no seu navegador e veja o resultado.

   1: <Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 

   2:       xmlns:sys="clr-namespace:System;assembly=mscorlib" 

   3:       xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >

   4:   <Grid x:Name="LayoutRoot" Background="White">

   5:     <Canvas Width="250" Height="200">    

   6:         <Canvas.Triggers>

   7:             <EventTrigger RoutedEvent="Canvas.Loaded">

   8:                 <BeginStoryboard>

   9:                     <Storyboard> 

  10:                         <DoubleAnimation 

  11:                             Storyboard.TargetName="theCircle" 

  12:                             Storyboard.TargetProperty="Width" 

  13:                             From="200" To="1" Duration="0:0:2"        

  14:                             AutoReverse="True"/>

  15:                     </Storyboard>

  16:                 </BeginStoryboard>

  17:             </EventTrigger>

  18:         </Canvas.Triggers>

  19:         <Ellipse x:Name="theCircle" Width="100" Height="100" Fill="Yellow" />                

  20:     </Canvas>

  21:   </Grid>

  22: </Page>

   1: <Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 

   2:       xmlns:sys="clr-namespace:System;assembly=mscorlib" 

   3:       xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >

   4:     <Grid x:Name="LayoutRoot" Background="White">

   5:         <Canvas>

   6:             <Canvas.Triggers>

   7:                 <EventTrigger RoutedEvent="Canvas.Loaded">

   8:                     <EventTrigger.Actions>

   9:                         <BeginStoryboard>

  10:                             <Storyboard BeginTime="0" Duration="Forever">

  11:                                 <DoubleAnimation Storyboard.TargetName="e1" Storyboard.TargetProperty="(Canvas.Top)" From="0" To="600" AutoReverse="true" BeginTime="0:0:6" Duration="0:0:1" RepeatBehavior="Forever"/>

  12:                                 <DoubleAnimation Storyboard.TargetName="e2" Storyboard.TargetProperty="(Canvas.Left)" From="0" To="860" AutoReverse="true" BeginTime="0:0:8" Duration="0:0:2" RepeatBehavior="Forever"/>

  13:                                 <DoubleAnimation Storyboard.TargetName="e3" Storyboard.TargetProperty="(Canvas.Top)" From="0" To="400" AutoReverse="true" BeginTime="0:0:11" Duration="0:0:3" RepeatBehavior="Forever"/>

  14:                                 <DoubleAnimation Storyboard.TargetName="e3" Storyboard.TargetProperty="(Canvas.Left)" From="0" To="700" AutoReverse="true" BeginTime="0:0:13" Duration="0:0:2" RepeatBehavior="Forever"/>

  15:                                 <DoubleAnimation Storyboard.TargetName="e2" Storyboard.TargetProperty="(Canvas.Top)" From="0" To="500" AutoReverse="true" BeginTime="0:0:14" Duration="0:0:1" RepeatBehavior="Forever"/>

  16:                                 <DoubleAnimation Storyboard.TargetName="e5" Storyboard.TargetProperty="(Canvas.Left)" From="0" To="90" AutoReverse="true" BeginTime="0:0:17" Duration="0:0:1" RepeatBehavior="Forever"/>

  17:                                 <DoubleAnimation Storyboard.TargetName="e5" Storyboard.TargetProperty="(Canvas.Top)" From="0" To="556" AutoReverse="true" BeginTime="0:0:20" Duration="0:0:2" RepeatBehavior="Forever"/>

  18:                                 <DoubleAnimation Storyboard.TargetName="e4" Storyboard.TargetProperty="(Canvas.Top)" From="0" To="556" AutoReverse="true" BeginTime="0:0:14" Duration="0:0:2" RepeatBehavior="Forever"/>

  19:                                 <DoubleAnimation Storyboard.TargetName="e4" Storyboard.TargetProperty="(Canvas.Top)" From="0" To="500" AutoReverse="true" BeginTime="0:0:17" Duration="0:0:1" RepeatBehavior="Forever"/>

  20:                             </Storyboard>

  21:                         </BeginStoryboard>

  22:                     </EventTrigger.Actions>

  23:                 </EventTrigger>

  24:             </Canvas.Triggers>

  25:             <Ellipse x:Name="e1" Opacity="0.5" Fill="YellowGreen" Height="100" Width="100" />

  26:             <Ellipse x:Name="e2" Opacity="0.5" Fill="Orange" Height="100" Width="100"/>

  27:             <Ellipse x:Name="e3" Opacity="0.5" Fill="Tomato" Height="100" Width="100"  />

  28:             <Ellipse x:Name="e4" Opacity="0.5" Fill="LightBlue" Height="100" Width="100" />

  29:             <Ellipse x:Name="e5" Opacity="0.5" Fill="Gold" Height="100" Width="100" />

  30:         </Canvas>

  31:     </Grid>

  32: </Page>


Deixe um comentário

Seu Comentário

Listen with Winamp/iTunes
Listen with Windows Media Player