黑马程序员 WPF编程概述
来源:互联网 发布:angularjs遍历json 编辑:程序博客网 时间:2024/04/27 01:56
1.什么是API?
API是程序员用来创建各种程序类型(主要是各种类)的一个集合,操作计算机给程序员的一个接口。
WPF就是使用了一个不一样的DLL(API程序集)。
2.一个简单的WPF程序,不使用WPF应用程序模板。
a. 创建一个控制台应用程序类型的新项目,命名为MySimpleProgramConsole。
b. 右击项目->属性->改变[输出类型]为[Windows应用程序].
c. 选择[添加引用],查看[.NET]选项卡,添加对以下程序集的引用:
- PresentationCore - PresentationFramework - WindowsBase - System.Xaml
d. 在Program.cs文件中,做下面的事情:
添加[STAThread]特性到主方法的声明前,添加System.Windows的using语句。
e.示例:
class Program
{
//STAThread特性设置了线程的单线程单元模式,如果程序需要使用COM它就会产生效果。
//如果程序不会用到COM,也必须在主方法上包悒含STAThread特性。
[STAThread]
static void Main(string[] args)
{
//创建Windows对象,设置它的两个属性。
Window myWin = new Window();
myWin.Title = "My Simple Window";
myWin.Content = "这个是控制台写的WPF程序;
//创建Application对象
Application myApp = new Application();
//关联Windows对象到Application对象,然后开始程序的运行。
myApp.Run(myWin);
}
}
我们可以这么想,WPF程序在编译的时候对XAML文件打包成一个类。
3. Application类和Windows类
最小功能程序的WPF程序包含一个Application类的实例与一个或多个Window类的实例.
a. Application对象支撑和承载Windows对象。
b. Windows对象构成用户界面并呈现数据。
4.Windows类
在屏幕上的每个窗口都是一个Windows类的实例的视觉展示。
一个可视化窗口的两个重要部件:
a.客户区是窗口中央的那片区域。这是你摆放组成你的用户界面并构成的你的程序的内容的地方,这片区域是你去做你想做的事情的地方。
b.非客户区是围绕着客户区的边框,包括图标、窗口标题和各种按钮。你不必去忧心于关于对片区域处理,因为操作系统会照料他。
创建一个窗口:
a.声明一个派生自Windows类的类,然后使用其构造函数通过设定适当的种属性来按你所想的方式配置他。
b.在主函数中,创建一个那个派生类的实例并使用Show方法让那个窗口在屏幕上显示其本身。
c.示例:
class MyWindow : Window
{
public MyWindow()
{
Width = 300;
Height = 200;
Title = "MY Simple Window";
Content = "Hi There!";
}
}
class Program
{
[STAThread]
static void Main(string[] args)
{
MyWindow win = new MyWindow();
win.Show();
Application app = new Application();
app.Run(); //设定应用程序的运行
}
}
5.一个窗口的各个重要属性。
包含其内容和背景的客户区,和包含窗口边框与上方的窗口条的非客户区。这些项目的外观受5个属性控制:Title、Content、Foreground、Background、和WindowsStyle。
窗口样式属性获取或设置非客户区的各种特征,包括边框样式和在显示在窗口条上的各种按钮。
WindowsStyle属性可以接受的值如下:
a.SingBorderWindow:这是默认的样式。特征:
— 围绕着客户区的一圈简单的单层边框
— 在窗口条上的一个最小化按钮、一个最大化按钮,和一个关闭按钮
— 在窗口条上的一个应用程序图标
b.ThreeDBorderWindow:比默认值,其边框内层是立体的。
c.ToolWindows:这相似于。。。窗口条上不包含图标或是最小最大化按钮,边框也更细一点。
d.None:这种样式有一个细边框并且没有窗口条。
Content属性:
Windows对象的内容总是包含一个对象。那个对象可以依次包含其他各种对象——但是仍算一个对象。
- 黑马程序员 WPF编程概述
- 黑马程序员---C#编程概述
- 黑马程序员_Java网络编程概述
- 黑马程序员——网络编程概述
- 黑马程序员_网络编程概述
- 黑马程序员—网络编程概述
- 黑马程序员 基础笔记 网络编程 概述
- 黑马程序员_java网络编程概述
- 黑马程序员_网络编程概述
- 【黑马程序员】wpf
- 黑马程序员02——C#编程概述
- 黑马程序员——java编程那些事儿____GUI概述
- 黑马程序员——网络编程(一)------概述
- 黑马程序员-网络编程概述-网络模型-UDP-TCP
- 黑马程序员—— Java编程语言学习总结--概述
- 黑马程序员_Map概述
- 黑马程序员_JavaScript概述
- 黑马程序员-GUI概述
- 认识OpenMP
- eclipse操作方面的一些小笔记
- 让sql语句不排序,按照in语句的顺序返回结果
- 系统方面
- Vim 练级攻略
- 黑马程序员 WPF编程概述
- CV牛人 计算机视觉相关会议资源
- struts2中的国际化
- maven学习笔记(五)nexus私服-创建hosted仓库
- Mysql 存储过程
- cocos2d-x苦思冥想连连看
- Github 删除Repositories(仓库)
- 打入内部寻内幕
- FLEX内嵌套网页