1、MD5加密
- 用处:对数据进行加密,比如储存密码的时候就会用到。服务器中,直接对加密后的密码进行比对。
- 相同一串密码,使用MD5加密后的密文是一定的。
- 举例:
static void Main(string[] args)
{
//将字符串"123"MD5加密
string s = GetMD5("123");
Console.WriteLine(s);
Console.ReadKey();
}
public static string GetMD5(string str)
{
//创建MD5对象
MD5 md5 = MD5.Create();
//将字符串转换为字节数组
byte[] buffer = Encoding.UTF8.GetBytes(str);
//返回一个加密好的字节数组
byte[] MD5Buffer=md5.ComputeHash(buffer);
str = "";
for (int i = 0; i < MD5Buffer.Length; i++)
{
str += MD5Buffer[i].ToString("x2");
}
return str;
}2、ToString()的参数
- 在括号内传入
" "可以指定输出的格式 - x:输出十六进制
- x2:输出对齐的十六进制
3、字节数组转换为字符串的方法
- 将字节数组中的每个元素按照指定的编码格式解析成字符串:比如UTF8.
- 直接将数组ToString(),返回命名空间
- 将字节数组中的每个元素ToString(),可以获得原本的字节。
4、winform桌面应用程序
1. 定义:
winform应用程序是一种智能客户端技术,我们可以使用winform应用程序帮助我们获得信息或者传输信息等
2. 执行过程:
先执行Program里面的main函数,创建Form1这个对象,执行Form1的构造函数(在Form1中),在构造函数中调用InitializeComponent(初始化组件,在Designer中),将组件初始化
3. 操作:
- 从后台切到前台:右击空白处---查看设计器
- 控件属性设置:F4
- 添加一个窗体:右击项目---添加---Windows 窗体。
- 更改控件属性的方法:1)在Designer中改代码;2)选中控件,右键---属性;3)选中控件,F4
4. 控件
1. 解释
- 每个控件都是一个类
- 每往窗体拖一个控件,都是一个创建控件对象的过程(相当于new一个)
2. 常用控件
1. Button按钮
- Name:在后台要获得前台的控件对象,需要使用Name属性
- Anchor:控制控件的边缘与窗体边缘位置是否固定
- BackColor:控制背景色
- BackgroundImage:可以上传图片作为背景色
- BackgroundImageLayOut:设置上传的图片的布局
- ContextMenuStrip:绑定右键菜单。需配合右键菜单(菜单和工具栏---ContextMenuStrip)使用
- Cursor:改变鼠标移到按钮上显示的光标
- Visible:控制控件是否可见
- Enable:控制控件是否可用
- FlatStyle:设置外观
2. TextBox输入文本框
- WordWrap:是否自动换行
- ScrollBars:滚动条
- PasswordChar:不管输入什么,都用一个字符掩盖显示
3. Timer计时
- 用处:在指定的时间间隔内做一件指定的事情。
- 想要生效一定enabled要改成true
4. CheckBox 多选
checked:选中或未选中
5. RadioButton 单选
- 在一个容器内的只能选一个
- 分组通常使用GroupBox进行,就可以实现一组里面选一个
6. MenuStrip 创建菜单栏
7. PictureBox
- 作用:显示图片
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;设置图片打开拉伸pictureBox1.Image = Image.FromFile(path[0]);放图片
3. 事件
1. 解释
- 注册事件:给按钮注册点击事件
- 触发事件:点击时触发
2. 注册事件流程:
- F4进入属性设置界面
- 点击小闪电的标志(事件的标志),此时默认高亮的事件就是此控件最常用的事件
- 在想要注册的事件上面双击,进入Form1
- 在方法中编写代码
- 此外,如果想要注册的事件是默认高亮的事件,直接双击控件即可
3. Click方法的两个参数
- object sender:出发事件的对象
- EventArgs e:执行对象所需的资源
5. 代码
MessageBox.Show():类似于Console.WriteLine()- 打开窗体
//在内存中创建窗体2对象
Form2 frm2 = new Form2();
//展示当前窗体
frm2.Show();.Close:关闭窗体.ClientSize.Width:获得窗体工作区的宽度.ClientSize.Height:获得窗体工作区的高度.Location获得控件坐标DateTime.Now获得当前系统时间,返回DateTime数据类型。DateTime.Now.Hour获得当前小时,返回int- 播放音乐
SoundPlayer sp = new SoundPlayer();
sp.SoundLocation = @" ";
sp.Play();.Focus():让文本框获得焦点.Clear():清空文本框.Visible;设置可见度(其他的属性设置也可以点出来,不再赘述)
6. 种类
- Button:按钮
- ContextMenuStrip:右键菜单
- Label:显示文本
- TextBox:输入文本框
7. 解释
- 添加多个窗体在运行的时候也只能打开一个窗体,Main函数中New的是哪个就打开哪个。
- Main函数中的窗体也称为这个窗体应用程序的主窗体。也就意味着,当主窗体关闭后,整个应用程序都关闭了。
- 想要访问其他窗体,在Form里面直接访问不到,需要格外创建一个静态类,写一个其他窗体类型的字段。在想要访问的窗体Form中把对象存到字段中,于是在想要访问其他窗体的窗体中就可以访问到这个字段。
- 在窗体中,左上角坐标为(0,0),分别向右、向下递增
8. 注意
- 打开控件之后,如果右上角有小箭头,一定要看一下
- 接受用户的文本的时候,要注意使用trim
5、MDI窗体的设计
- 首先确定一个父窗体。将IsMdiContainer设置为true。
- 创建子窗体,并且设置他们的父窗体。
Form form = new Form();
form.MdiParent = this;
form.Show();- 横向排列:
LayoutMdi(MdiLayout.TileHorizontal);- 纵向排列:
LayoutMdi(MdiLayout.TileVertical);6、Directory类
1. 作用:操作文件夹
2. 方法:
string[] Directory.GetFiles()获得某一文件夹路径下所有文件的全路径
评论