xaml开始使用xaml


备注

E X tensible 一个 pplication 中号 大号 arkup anguage(XAML)是由微软开发的基于XML的标记语言。它用于多种Microsoft技术,如Windows Presentation Foundation(WPF),Silverlight,WinRT,Universal Windows Platform等,以定义应用程序的用户界面。

版本

发布日期
WPF XAML 2006-11-21
Silverlight 3 2009-07-09
Silverlight 4 2010-04-15
Windows 8 XAML 2011-09-01

你好,世界

这是WPF中XAML页面的一个简单示例。它由GridTextBlockButton - XAML中最常见的元素。

<Window x:Class="FirstWpfApplication.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"
        mc:Ignorable="d"
        Title="MainWindow" 
        Height="350"
        Width="525">
    <Grid>
        <TextBlock Text="Welcome to XAML!"
                   FontSize="30"
                   Foreground="Black"
                   HorizontalAlignment="Center"
                   VerticalAlignment="Center"/>
        
        <Button Content="Hello World!"
                Background="LightGray"
                Foreground="Black"
                FontSize="25"
                Margin="0,100,0,0"
                VerticalAlignment="Center"
                HorizontalAlignment="Center"/>
    </Grid>
</Window>
 
句法描述
<Window> 容纳可视化数据并使用户能够与其交互的内容的根容器。 WPF窗口是XAML(.xaml)文件(其中元素是根)和CodeBehind(.cs)文件的组合。
<Grid> 一个布局面板,用于将子元素排列为行和列的表格结构。
<TextBlock> 提供轻量级控件,用于在其Inlines属性中的Text属性或Inline流内容元素(如Bold,Hyperlink和InlineUIContainer)中显示字符串文本。
<Button> 表示一个按钮控件,它响应用户点击它。
属性描述
Title 获取或设置窗口的标题。
Height 获取或设置元素的高度。
Width 获取或设置元素的宽度。
Text 获取或设置文本元素的文本内容。
FontSize 获取或设置文本的顶级字体大小。
Background 获取或设置绘制元素背景的画笔颜色。
Foreground 获取或设置绘制元素中文本字体的画笔颜色。
Margin 获取或设置描述元素与其他元素之间的外部空间的值。
HorizontalAlignment 获取或设置在父元素(例如面板或项控件)中组合时应用于元素的水平对齐特征。
VerticalAlignment 获取或设置在父元素(如面板或项控件)中组合时应用于元素的垂直对齐特征。

安装或设置

编写第一个XAML的最简单方法是安装Microsoft Visual Studio。这可以从Microsoft免费获得。

安装完成后,您可以使用VB.NET或C#代码创建WPF Application类型的新项目。

这与Windows窗体类似,因为您有一系列窗口,主要区别在于这些窗口是用XAML编写的,并且对不同的设备响应更快。

还需要改进。