Um pouco de XAML
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>


Tadeu Torquato

