如果不用VS的WPF项目模板,如何手工创建一个WPF程序呢?我们来模仿WPF模板,创建一个最简单的WPF程序。

第一步:文件——新建——项目——空项目,创建一个空项目。

第二步:添加引用,PresentationFramework,PresentationCore,WindowsBase,System,System.Xaml,这几个是WPF的核心dll。

第三步:在项目上右键添加新建项,添加两个“xml文件”,分别命名为App.xaml和MainWindow.xaml。可以看出,xaml文件其实就是xml文件。  

第四步:同第二步,添加两个代码文件,即空白c#代码文件,分别命名为App.xaml.cs和MainWindow.xaml.cs。可以看到,这两个文件自动变成第二步生成的两个文件的code-behind文件。

第五步:添加Xaml和C#代码:

  App.xaml和MainWindow.xaml中删除自动生成的xml文件头,分别添加如下Xaml标记:

<Application x:Class="WpfApp.App"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"StartupUri="MainWindow.xaml"><Application.Resources></Application.Resources>
</Application>

<Window x:Class="WpfApp.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Title="MainWindow" Height="350" Width="525"><Grid></Grid>
</Window>

  App.xaml.cs和MainWindow.xaml.cs中分别添加类似如下的代码:

using System.Windows;namespace WpfApp
{/// <summary>/// App.xaml 的交互逻辑/// </summary>public partial class App : Application{}
}

using System.Windows;namespace WpfApp
{/// <summary>/// MainWindow.xaml 的交互逻辑/// </summary>public partial class MainWindow : Window{public MainWindow(){InitializeComponent();}}
}

第六步:如果此时编译就会报错,提示没有找到Main函数入口,这个Main函数其实不用自己添加,系统会自动生成的。打开App.xaml的文件属性,将生成操作由Page改为ApplicationDefinition。

第七步:此时应该已经可以正常运行了,系统默认输出是控制台应用程序,可以打开项目属性页,将输出类型改为Windows应用程序。

至此,一个模仿VS的WPF项目模板的最简单的WPF程序就OK了。

转载于:https://www.cnblogs.com/pemp/p/3593337.html

在VS中手工创建一个最简单的WPF程序相关推荐

  1. oracle简易数据库搭建,Oracle 10g 手工创建一个最简单的数据库

    [root@blliu ~]# su - oracle [oracle@blliu ~]$ cd $ORACLE_HOME/dbs [oracle@blliu dbs]$ touch initorcl ...

  2. matlab程序 如何使用,如何使用MATLAB创建一个最简单的程序

    <如何使用MATLAB创建一个最简单的程序>由会员分享,可在线阅读,更多相关<如何使用MATLAB创建一个最简单的程序(4页珍藏版)>请在人人文库网上搜索. 1.如何使用MAT ...

  3. 创建一个最简单的VST

    创建一个最简单的VST 现在主流的是vst3,Steinberg已经不想支持VST之前的版本了.从官方下载的VST3 SDK中(只提供3.0版)附带VST2 SDK,但是实测缺少一些头文件,无法单独使 ...

  4. mysql 中修改对象_在MySQL中,创建一个数据库后,还可以对象其进行修改,不过这里的修改是指可以修改被创建数据库的相关参数,也可以修改数据库名。...

    [多选题]注射时,在(  )情况下,采用较高的注射速率. [单选题]通常,所设置的模具温度是指和制品接触的模腔内表面在(   ). [单选题]反映某一事件发生强度的指标应选用 [判断题]当试样制备之后 ...

  5. vscode vue解决跨域_在vs code 中如何创建一个自己的 Vue 模板代码

    首先,在vs code 中打开定义模板代码的地方 第一步,点击"设置"图标按钮,在弹出的菜单中点击的"用户代码片段"(也就是模板) 第二步,在弹出的框中选择新建 ...

  6. 创建一个最简单的win32应用程序

    创建一个最简单的win32应用程序 使用的是vs2013 中文版 首先创建一个win32 应用程序 工程 也可以使用快捷键 Ctrl+Shift +N 创建的工程名字是 HelloApp 下一步 建立 ...

  7. Java中如何创建一个文件或者文件夹

    Java中如何创建一个文件或者文件夹 创建一个文件夹: 调用Java中File类中的mkdir( )或者mkdirs( )方法 boolean  makdir( ):创建一个文件夹,创建成功返回tru ...

  8. java 创建多维数组_java中如何创建一个多维数组?实例展示

    在互联网产业发展的越发如火如荼的今时今日,越来越多的人开始投入到新兴技术的学习当中去.java作为一门十分重要的编程语言,是许多人首选的学习对象.今天就来为大家介绍一下java中如何创建一个多维数组, ...

  9. 用python创建一个最简单的触发器trigger

    用python创建一个最简单的触发器trigger 上面就是自己的创建效果了,点击之后会有对话框弹出来,这就是最简单的触发器原理了. trigger就是触发器,触发器主要是通过事件进行触发而被执行的工 ...

最新文章

  1. log4j的NDC/MDC区别与应用
  2. shell python比较_shell中的条件判断以及与python中的对比
  3. LeetCode 113. 路径总和 II(回溯)
  4. (一二六)第十一章编程练习
  5. 协同过滤算法_基于Mahout的协同过滤推荐算法
  6. 软件工程学习总结(4)——软件工程概论
  7. 二代征信在小额线上贷款风控领域应用探索
  8. 获取android型号代码,Android应用开发之Android获取手机品牌、手机型号、手机唯一序列号的代码教程...
  9. 2016-6-3Ajax异步复习
  10. 基于百度云AI开发车型识别车牌识别案例详解
  11. 数学建模国赛论文latex代码汇总
  12. 算法(一)时间复杂度
  13. 打开图片时提示windows照片查看器无法显示图片内存不足该如何解决
  14. 发起一款国产开源CRM系统,有想共同参与的进来哈,己发出SVN库
  15. 智慧消防之物联网消防的意义
  16. 电脑查询域名对应IP的过程
  17. web前端期末大作业网页设计与制作 ——汉口我的家乡旅游景点 5页HTML+CSS+JavaScript
  18. Linux查看网卡的运行情况,NETSTAT - 查看网络运行情况。
  19. vscode美化插件推荐
  20. 微信公众号开发教程[018]-数据统计

热门文章

  1. Jenkins连接git时出现“Failed to connect to repository : Command ... HEAD“ returned status code 128:”的问题解决
  2. 如何在Java项目中查找未使用/无效的代码
  3. 如何将特定提交推送到远程,而不是之前的提交?
  4. 计算机模块的概念,用户定义类模块概念-计算机二级-Access
  5. Win11打不开Windows安全程序如何修复?
  6. Web项目中前端页面通过URL传中文或 # 特殊字符到后台出现乱码解决方案
  7. STM32F103mini基础知识归纳
  8. iphone怎么重启_iPhone看完这个都要卡死机!这串神秘代码,是真的有毒
  9. CSS 的复合选择器
  10. 箭头函数:this的指向问题