XAML
此條目没有列出任何参考或来源。 (2017年4月13日) |
此條目需要精通或熟悉计算机科学的编者参与及协助编辑。 |
XAML(Extensible Application Markup Language i/ˈzæməl/)是Windows Presentation Foundation(WPF)和Universal Windows Platform(UWP)的一部分,是微软开发的一種基于XML、基于声明,用于初始化结构化值和对象的使用者介面宣告式程式設計,它有著HTML的外觀,又揉合了XML語法的本質,例如:可以使用<Button>標籤設定按鈕(Button)。它類似Linux平台下的glade。至於WinFX XAML Browser Application(XBAP)是用XAML作界面描述,在瀏覽器中執行的程式,可取代過去的ActiveX、Java Applet、Flash。
XAML本質上屬於一種.NET编程语言,屬於通用語言運行庫(Common Language Runtime),同C#、VB.NET等同。與HTML類似,特点是用來描述使用者介面。XAML的语法格式为:<Application... />,Application是必備的基本元素。XAML可以定義2D和3D物件、旋轉(rotations)、動畫(animations),以及各式各樣的效果。
Hello world
[编辑]- C# UWP
<Page x:Class="UwpAppExample.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:UwpAppExample" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <Grid> <Button Margin="10,0,10,0" Height="100" Click="Hello_Click" Content="Click Me!"/> </Grid> </Page> |
using System; using Windows.UI.Xaml.Controls; namespace UwpAppExample { public sealed partial class MainPage : Page { public MainPage() { this.InitializeComponent(); } private async void Button_Click(object sender, Windows.UI.Xaml.RoutedEventArgs e) { await new Windows.UI.Popups.MessageDialog("Hello World!").ShowAsync(); } } } |
- C# WPF
<Window x:Class="WpfAppExample.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:WpfAppExample" mc:Ignorable="d" Title="MainWindow" Height="350" Width="525"> <Grid> <Button Margin="10,0,10,0" Height="100" Click="Hello_Click" Content="Click Me!"/> </Grid> </Window> |
using System.Windows; namespace WpfAppExample { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void Hello_Click(object sender, RoutedEventArgs e) { MessageBox.Show("Hello World!"); } } } |
- Visual Basic dotNet
<Window x:Class="WpfAppExample.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:WpfAppExample" mc:Ignorable="d" Title="MainWindow" Height="350" Width="525"> <Grid> <Button Margin="10,0,10,0" Height="100" Click="Hello_Click" Content="Click Me!"/> </Grid> </Window> |
Imports System.Windows Class MainWindow Sub New() InitializeComponent() End Sub Private Sub Hello_Click(sender As Object, e As RoutedEventArgs) MessageBox.Show("Hello World!") End Sub End Class |
参考资料
[编辑]外部連結
[编辑]- Microsoft XAML overview
- XAMLdev.com (页面存档备份,存于互联网档案馆) A selection of categorized resources on XAML
- XAML Controls from Microsoft Longhorn Developer Introduction (页面存档备份,存于互联网档案馆)
- XAML used in Microsoft .NET platform (页面存档备份,存于互联网档案馆)
- XAMJ, open source Java based project (页面存档备份,存于互联网档案馆)
- United XAML Initiative (页面存档备份,存于互联网档案馆) - Open Source XAML Alternatives
- Shaxam - LightWave to XAML converter
- XAML and Technical Authors (页面存档备份,存于互联网档案馆) A discussion of the affect of the open nature of XAML.
- XAML page on NetFXGuide.com A selection of categorized resources on XAML.
- LearnWPF Website to learn WPX. (页面存档备份,存于互联网档案馆)
- XAML Discussion Board - A great discussion board for questions on XAML and the WPF