【愚公系列】2023年12月 WPF控件专题 XAML介绍
  pjqvC5BRM2Nx 2023年12月22日 43 0

🏆 作者简介,愚公搬代码 🏆《头衔》:华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,阿里云专家博主,腾讯云优秀博主,掘金优秀博主,51CTO博客专家等。 🏆《近期荣誉》:2022年CSDN博客之星TOP2,2022年华为云十佳博主等。 🏆《博客内容》:.NET、Java、Python、Go、Node、前端、IOS、Android、鸿蒙、Linux、物联网、网络安全、大数据、人工智能、U3D游戏、小程序等相关领域知识。 🏆🎉欢迎 👍点赞✍评论⭐收藏

(文章目录)

🚀前言

WPF(Windows Presentation Foundation)是微软推出的一种基于.net框架的图形用户界面技术,它使用XAML(eXtensible Application Markup Language)作为UI的描述语言。XAML是一种基于XML的标记语言,用于描述WPF应用程序的用户界面、控件、布局、样式和数据绑定。XAML可以将UI元素和代码分离,使得设计人员和开发人员能够分别负责UI和逻辑的开发,从而提高开发效率。

XAML可以描述各种UI元素,包括窗口、按钮、文本框、列表框、菜单等,同时还可以定义这些元素的样式、布局和动画效果。XAML还支持数据绑定,可以将UI元素和数据模型关联起来,使得UI能够自动更新数据。

在WPF中,XAML被用来构建UI,它可以和C#、VB.NET等编程语言混合使用。开发人员可以使用XAML定义UI元素和布局,然后通过编写代码来处理界面逻辑和数据操作。由于XAML是基于XML的文本文件,因此可以轻松地进行版本控制和协作开发。

XAML是WPF应用程序的核心语言,掌握XAML是WPF开发人员必备的技能之一。

🚀一、XAML定义

XAML(可扩展应用程序标记语言)是一种使用XML语法描述UI元素和应用程序逻辑的语言,通常用于开发.NET框架下的WPF(Windows Presentation Foundation)和UWP(Universal Windows Platform)应用程序。XAML可将UI设计与应用程序逻辑分离,使开发人员和设计人员可以独立工作,提高了团队协作的效率。通过编写XAML代码,开发人员可以定义UI元素(如按钮、文本框、菜单等),管理布局和样式,以及编写应用程序逻辑(如事件处理程序、数据绑定等)。 XAML还支持使用数据绑定、样式模板、动画等高级特性,为应用程序提供更丰富的交互和用户体验。

🚀二、特点

XAML的特点和优势包括:

  1. 分离UI设计和应用程序逻辑:XAML将UI设计与代码逻辑分离,开发人员和设计人员可以独立工作,提高了团队协作的效率。

  2. 语法简洁:XAML使用XML语法描述UI元素和应用程序逻辑,语法简洁易懂,降低了学习成本。

  3. 可读性高:XAML代码结构清晰,易于维护和修改,增强了代码可读性。

  4. 跨平台:XAML可用于WPF和UWP等.NET框架下的应用程序开发,支持跨平台开发。

  5. 支持数据绑定:XAML支持数据绑定,可以将UI元素与数据模型关联,自动更新UI界面。

  6. 支持样式模板:XAML支持样式模板,可以定义统一的UI样式和外观,提高了应用程序的一致性和美观度。

  7. 支持动画效果:XAML支持动画效果,增强了应用程序的交互性和用户体验。

  8. 支持自定义控件和布局:XAML支持自定义控件和布局,可以根据需求个性化定制UI元素和布局。

🚀三、命名空间

xaml与.net程序语言一样,也是通过命名空间有效组织xaml内部的相关元素类,不一样,

命名空间,像网址,(打不开) ,规则(xaml解析器标准)

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

默认的命名空间

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

xaml语法和编译相关的clr命名空间 区分:如果应用时,不带前缀,就来自于默认的命名空间,否则,就来自于带前缀的命名空间。

xaml命名空间

xmlns[:前缀名]="命名空间描述";

自定义类或程序集映射语法

xmlns[:必选前缀]="clr-namespace:[命名空间];assembly=[程序集名称]"

🚀四、XAML样例

🔎1.代码

<Window x:Class="MyXaml.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MyXaml" Height="150" Width="300"  >
    <Grid>
        <Grid.RowDefinitions>
        <RowDefinition Height="30"/>
        <RowDefinition Height="30"/>
        <RowDefinition Height="30"/>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        </Grid.ColumnDefinitions>
        <TextBlock Grid.Column="0" Grid.Row="0" FontWeight="Bold" Text="姓名:" Width="30"/>
        <TextBlock Grid.Column="0" Grid.Row="1" FontWeight="Bold" Width="30">性别:</TextBlock>
        <TextBlock Grid.Column="0" Grid.Row="2" FontWeight="Bold" Width="30" Text="年龄"></TextBlock>
        <TextBox Grid.Column="1" Grid.Row="0" FontWeight="Bold" Width="100" />
        <TextBox Grid.Column="1" Grid.Row="1" FontWeight="Bold" Width="100"/>
        <TextBox Grid.Column="1" Grid.Row="2" FontWeight="Bold" Width="100"/>
    </Grid>
</Window>

🔎2.运行结果

在这里插入图片描述

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年12月22日 0

暂无评论

推荐阅读
pjqvC5BRM2Nx