1.1
.net Framework编写应用程序的过程
使用.NET Framework编写应用程序,就是使用.net 代码库编写代码(使用支持framework的任何一种语言)
为执行c#代码,必须把他们转化为目标操作系统能够理解的语言,即本机代码(native code),这种转换称为代码编译,由编译器执行。
CIL
在编译使用 .net Framework库的代码时,不是立即创建专用于操作系统的本机代码,而是把代码编译为通用中间语言(Common Intermediate Language)。这些代码并非专用于任何一种操作系统,也非专用于c的其他.net语言,如visual basic .NET也可以在第一阶段编译为这种语言。开发c#时,这个编译步骤由IDE完成。
程序集
编译应用程序时,所创建的CIL代码存储在一个程序集中。程序集包括可执行的应用程序文件(exe)和其他应用程序使用的库(dll)
JIT编译器
英文写作Just-In-Time Compiler,中文意思是即时编译器。JIT能够将CIL语言编译成各种不同的机器代码,以适应对应的系统平台,最终使得程序在目标系统中得到顺利运行。
托管代码
在将代码编译为CIL,再用JIT编译器将它编译为本机代码后,CLR的任务还没有全部完成,还需要管理正在执行的用.NET Framework编写的代码(这个执行代码的阶段通常称为运行时runtime)。即CLR管理着应用程序,方式是管理内存,处理安全性以及允许进行跨语言调试等。
相反,不受CLR控制运行的应用程序属于非托管类型,某些语言如C++可以用于编写这类应用程序。例如,访问操作系统的低级功能。但是在c#中,只能编写在托管环境下运行的代码。我们将使用CLR的托管功能,让.net自己与操作系统进行交互。
简单来说,托管代码是一种microsoft的中间语言,主要作用是在.NET Framework的CLR执行代码前去编译源代码,也就是说托管代码充当着翻译的作用。源代码在运行时分为两个阶段:
1.源代码编译为托管代码(源代码可以有很多种,vb,c#,j#)
2.托管代码编译为microsoft系统的平台专用文件(如类库,可执行文件等)
创建.NET应用程序所经历的步骤
1.使用某种.net兼容语言(如c#)编写代码;
2.IDE把代码编译为CIL,存在程序集中;
3.在执行代码时,使用JIT编译器将代码编译为本机代码。
4.在托管的CLR环境下运行本机代码,以及其他应用程序或进程。
1.2控制台程序Console Application
打开控制台的方法:win + r -> cmd -> enter
1.3桌面应用程序WPF Application
1.4Windows窗体技术及控件
窗体的常用属性
BackColor 背景色
BackgroundImage 背景图
Cursor 鼠标光标形状
HelpButton 帮助按钮,不能同时与最大化最小化一起显示
Icon 左上角窗口图标
MainMenuStrip 为本窗体指定主menustrip
MaximumBox 最大化按钮
MinimumBox最小化按钮
MaximumSize 指定最大化尺寸
MinimumSize 指定最小化尺寸
Name 窗体的唯一标识
ShowIcon 指定窗体是否显示图标
ShowInTaskbas 在任务栏上是否显示
Size 大小
StartPosition 指定窗体第一次出现的位置
Text 窗体的标题
TopMost 指/定是否居顶
窗体的常用事件
Load 窗体运行完成即为加载
Click点击事件
DoubleClick 双击事件
FormClosed
KeyDown 按下按键
KeyUp 释放按键
KeyPress 按下并释放
MouseClick 鼠标点击
MouseDoubleClick 鼠标双击
MouseDown
MouseHover 鼠标光标悬停
MouseUp
窗体添加控件,窗体显示与隐藏
视图-> 工具箱 ,拖动控件添加到UI;窗体标识.Controls.Add();
窗体标识.show;
窗体标识.hide;
MDI窗体
isMdiContainer 指定是否是多窗体,创建子窗体;
窗体中控件的基本操作
size 大小
格式 -> 顺序
bringToFront();
SendTo
- 全新的界面设计 ,将会带来全新的写作体验;
- 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
- 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
- 全新的 KaTeX数学公式 语法;
- 增加了支持甘特图的mermaid语法1 功能;
- 增加了 多屏幕编辑 Markdown文章功能;
- 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
- 增加了 检查列表 功能。
功能快捷键
撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + Shift + B
斜体:Ctrl/Command + Shift + I
标题:Ctrl/Command + Shift + H
删除线:Ctrl/Command + Shift + S
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
合理的创建标题,有助于目录的生成
直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC
语法后生成一个完美的目录。
如何改变文本的样式
强调文本 强调文本
加粗文本 加粗文本
标记文本
删除文本
引用文本
H2O is是液体。
210 运算结果是 1024.
插入链接与图片
链接: link.
图片:
带尺寸的图片:
当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。
如何插入一段漂亮的代码片
去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片
.
// An highlighted block
var foo = 'bar';
生成一个适合你的列表
- 项目
- 项目
- 项目
- 项目
- 项目1
- 项目2
- 项目3
- 计划任务
- 完成任务
创建一个表格
一个简单的表格是这么创建的:
项目 | Value |
---|---|
电脑 | $1600 |
手机 | $12 |
导管 | $1 |
设定内容居中、居左、居右
使用:---------:
居中
使用:----------
居左
使用----------:
居右
第一列 | 第二列 | 第三列 |
---|---|---|
第一列文本居中 | 第二列文本居右 | 第三列文本居左 |
SmartyPants
SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:
TYPE | ASCII | HTML |
---|---|---|
Single backticks | 'Isn't this fun?' | ‘Isn’t this fun?’ |
Quotes | "Isn't this fun?" | “Isn’t this fun?” |
Dashes | -- is en-dash, --- is em-dash | – is en-dash, — is em-dash |
创建一个自定义列表
-
Markdown
- Text-to- HTML conversion tool Authors
- John
- Luke
如何创建一个注脚
一个具有注脚的文本。2
注释也是必不可少的
Markdown将文本转换为 HTML。
KaTeX数学公式
您可以使用渲染LaTeX数学表达式 KaTeX:
Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n−1)!∀n∈N 是通过欧拉积分
Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t   . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=∫0∞tz−1e−tdt.
你可以找到更多关于的信息 LaTeX 数学表达式here.
新的甘特图功能,丰富你的文章
- 关于 甘特图 语法,参考 这儿,
UML 图表
可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图::
这将产生一个流程图。:
- 关于 Mermaid 语法,参考 这儿,
FLowchart流程图
我们依旧会支持flowchart的流程图:
- 关于 Flowchart流程图 语法,参考 这儿.
导出与导入
导出
如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。
导入
如果你想加载一篇你写过的.md文件或者.html文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。
注脚的解释 ↩︎