随笔分类 - C#
摘要:场景一 点击登录按钮,登录窗体关闭,主页面窗体打开 1、在 Program.cs中,开启登录窗体的模态窗 FrmLogin frmLogin = new FrmLogin(); frmLogin.ShowDialog(); 2、在登录窗体中,在登录成功的逻辑后,设置登录窗体模态窗的状态,并关闭(ok
阅读全文
摘要:一、对象层 1、新建文件夹 Models 或 Entity 2、创建对象类,修改修饰词为public,创建属性 3、案例 namespace qqTest.Models { public class User { public string UserName { get; set; } public
阅读全文
摘要:一、常用委托 委托的方法,返回值和参数相同(类型、数量) 1、声明 public delegate 返回类型 委托名(参数类型 参数名, ...); 2、使用 委托名 委托对象名 = new 委托名(委托方法名); 委托对象名(委托方法参数); 简写 委托名 委托对象 = 委托方法名; 委托对象名(
阅读全文
摘要:1、声明 修饰词 返回值 函数名(params int[] 参数名) 2、调用 a、函数名(参数1,参数2,...) b、函数名(new int[]{参数1, 参数2}) 3、注意 a、可变参数要放在最后 b、params关键字后面加数组 c、可以配合ref和out使用,ref out 后面加数据类
阅读全文
摘要:如果想要基本数据类型传递地址,需要用到ref和out ref和out区别: 1、ref:可进可出,out:只出不进 2、ref调用数据前必须初始化,out不需要初始化(声明即可)
阅读全文
摘要:1、Hashtable Hashtable hashtable = new Hashtable(); hashtable.Add(1, "tom"); hashtable.Add(2, "jack"); foreach (DictionaryEntry entry in hashtable) { C
阅读全文
摘要:1、创建 Stack stack = new Stack(); 2、压栈 stack.Push(value); 3、出栈 stack.Pop(); 4、数量 stack.Count 5、首栈 stack.Peek();
阅读全文
摘要:一、基础 功能:通过信号机制控制线程的执行顺序,常用于线程之前的通信 案例:生产者消费者,winform 主线程和工作线程 二、核心 1、作用 通知等待的线程某个事件已发生(资源就绪、操作完成) 2、信号状态 有信号:WaitOne() 不会阻塞 无信号:WatiOne() 会阻塞,直到信号触发 3
阅读全文
摘要:一、Queue 1、创建<数据类型> Queue<int> queue = new Queue<int>(); 2、方法 // 存 value queue.Enqueue(value) // 取 int result = queue.Dequeue(); // 队列数量 queue.Count 3、
阅读全文
摘要:1、创建锁 a、特点 私有、静态、只读的对象 b、语法 private static readonly object objLock = new object(); 2、使用锁 lock(objLock){ // 需要锁的代码块 }
阅读全文
摘要:Task 默认使用线程池,而Thread不是 一、new Thread 1、语法 a、无参、无返回值 Task task = new Task(方法); task.Start() b、有参、无返回值 注意:参数类型 object,在方法中做转换 Task task = new Task(方法,方法参
阅读全文
摘要:方案: 1、delegate和invoke 2、delegate和BeginInvoke 区别:invoke 方法是同步 BeginInvoke 方法是异步,另起一个线程完成工作线程 案例 using System; using System.Threading; using System.Wind
阅读全文
摘要:注意:含参的线程,参数必须是object类型 含参的线程,可以把数据从主线程传到子线程 一、线程 1、创建 a、创建Thread实例,并传入 ThreadStart 委托,可以配置是否为后台线程 b、调用Thread.Start 方法,还可以传参 2、终止 a、调用Thread.Join 方法,等待
阅读全文
摘要:一、常用属性 1、Text 2、Enable 是否可用 二、常用事件 Click
阅读全文
摘要:一、常用属性 1、Text 2、Multiline:设定文本框是否多行 3、Passwordchar:密文 一般输入 * 4、ReadyOnly:只读 二、常用事件 1、TextChanged:文本矿内容发生变化 2、Enter:文本框获得焦点 3、Leave:文本框失去焦点 三、常用方法 1、Cl
阅读全文
摘要:1、导入 1、双击 Resources.resx 2、打开(或者直接拖拽进去) 3、选择类型和文件 二、使用 1、引入 using WindowsFormsApp.Properties; 2、使用 Resources.资源名
阅读全文
摘要:一、常用属性 1、Name 2、Text 3、BackColor 背景色 4、ForeColor 字体颜色 5、BorderStyle 边框样式 6、Font 字体 7、Image 背景图 8、Enabel 是否可用 9、AutoSize 自定义label大小 二、常用事件 MouseEnter
阅读全文
摘要:一、窗体常用方法 Show(); // 展示 Hide(); // 隐藏 Close(); // 关闭 二、窗体常用事件 初始化的方法,优先级高于Load Load:加载,初始化时,窗体打开前 Click:点击窗口触发
阅读全文
摘要:一、 1、语法 MessageBox.show(); 注意:有返回值,返回值需要ToString(),根据返回值,判断选的那个按钮 2、案例 using System; using System.Collections.Generic; using System.ComponentModel; us
阅读全文
摘要:lambda表达式与js相似 1、完整版本(未省略) using System; namespace ClassAndIn { internal class Program { static void Main(string[] args) { Func<int, int, int> func =
阅读全文

浙公网安备 33010602011771号