欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

一个基于Net Core3.0的WPF框架Hello World实例

程序员文章站 2023-11-08 20:49:28
一个基于Net Core3.0的WPF框架Hello World实例 [toc] 1.创建WPF解决方案 1.1 创建Net Core版本的WPF工程 1.2 指定项目名称,路径,解决方案名称 2. 依赖库和4个程序文件介绍 2.1 框架依赖库 依赖Microsoft.NETCore.App跟Mic ......

一个基于net core3.0的wpf框架hello world实例

1.创建wpf解决方案

1.1 创建net core版本的wpf工程

一个基于Net Core3.0的WPF框架Hello World实例

一个基于Net Core3.0的WPF框架Hello World实例

1.2 指定项目名称,路径,解决方案名称

一个基于Net Core3.0的WPF框架Hello World实例

2. 依赖库和4个程序文件介绍

一个基于Net Core3.0的WPF框架Hello World实例

2.1 框架依赖库

依赖microsoft.netcore.app跟microsoft.windowsdesktop.app.wpf

2.2 生成文件说明

生成4个文件app.xaml,app.xaml.cs,mainwindow.xaml,mainwindow.xaml.cs

2.2.1 app.xaml

app.xaml设置应用程序的起始文件与资源。这里的资源一般指:

  • 其他xaml样式文件的路径;
  • 设置主题色,背景色,窗体样式;
  • 按钮样式,菜单样式;
  • 自定义弹出样式,自定义滚动条宽度;
    ......等等

app.xaml文件内容如下:

<application x:class="ibmsmanager.app"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:local="clr-namespace:ibmsmanager"
             startupuri="mainwindow.xaml">
    <application.resources>
         系统资源定义区
    </application.resources>
</application>
  • application x:class="ibmsmanager.app" 表示application后台类
  • xmlns="" 表示wpf应用程序的默认命名空间映射
  • xmlns:x="" 映射可扩展应用程序标记语言(xaml)的扩展命名空间,通常将其映射为x前缀
  • xmlns:local="clr-namespace:ibmsmanager" 项目的名称就是ibmsmanager
  • startupuri="mainwindow.xaml" 表示要启动的应用窗体

2.2.2 app.xaml.cs

app.xaml的后台文件,集成自system.windows.application,用于处理整个wpf应用程序相关的设置。

2.2.3 mainwindow.xaml

wpf应用程序界面与xaml设计文件

<window x:class="ibmsmanager.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:ibmsmanager"
        mc:ignorable="d"
        title="ibmsmanager" height="450" width="800">
    <grid>

    </grid>
</window>
  • windows对象实例基类
  • xmlns:d="
  • xmlns:mc="
  • mc:ignorable="d",d:designwidth是设计时的,所以,ignorable="d"就是告诉编译器在实际运行时,忽略设计时设置的值。
  • title="mainwindow" height="450" width="800" 属性设置,这里讲title改为ibmsmanager
  • 用来划分页面的分割与区域,填放按钮等页面元素

2.2.4 mainwindow.xaml.cs

mainwindow.xaml的后台文件,集成自system.windows.window,用于编写mainwindow.xaml 的交互逻辑代码

3. hello world实例

3.1 拖动按钮控件到wpf窗体中

一个基于Net Core3.0的WPF框架Hello World实例

一个基于Net Core3.0的WPF框架Hello World实例

mainwindow.xaml文件中会自动添加如下代码

    <grid>
        <button content="button" horizontalalignment="right" margin="0,0,554,254" verticalalignment="bottom"/>
    </grid>

代码主要在grid标签中描述了按钮的属性

3.2 设计时中双击按钮添加按钮事件

一个基于Net Core3.0的WPF框架Hello World实例

mainwindow.xaml文件中会自动添加click="button_click

    <grid>
        <button content="button" horizontalalignment="right" margin="0,0,554,254" verticalalignment="bottom" click="button_click"/>
    </grid>

后台mainwindow.xaml.cs文件中自动添加了事件处理函数

private void button_click(object sender, routedeventargs e)
       {
       }

3.3 事件处理函数中添加消息提示框

点击按钮后,出现消息提示框hello world。

    private void button_click(object sender, routedeventargs e)
        {
            messagebox.show("hello world!");
        }

3.4 效果如下

一个基于Net Core3.0的WPF框架Hello World实例