winform开发心得
最近一直在从事winform的开发,每次都是需要从网上查找资料才能对应具体风格要求,现在总结一下。
ui方面可以使用CSkin对应的一套ui,使用步骤
1.在窗口界面,工具箱空白处点击右键,弹出菜单有个”选择项“,点击之后,浏览对应的dll文件加载确认之后,对应的控件就会在工具箱中出现,接下来的操作就和普通控件一样拖动就可以使用。
2.思路,winform界面开发,对应的弹出框,我们可以把父窗口对象直接传给需要的子对象,子对象在关闭或者调用接口时,直接使用父对象的方法。
3.Gridview的一些操作:
1.获取选择行数据转换成对象:this.configGrid.CurrentRow.DataBoundItem as WorkspaceBeanConfig;
2.grid在绑定对象的时候会显示对象所有的字段,使用 configGrid.AutoGenerateColumns = false;可以显示只有绑定到表单中的字段。
4.首先grid绑定字段如下图所示:
grid多选对应的代码:
#region 列表勾选private void textGridView_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e){if (e.ColumnIndex == 0){configGrid.ClearSelection();if (configGrid.Rows.Count == 0)return;configGrid.CurrentCell = configGrid[1, 0];//如果没有这句代码,如果复选框列有某个单元格获得焦点时,虽然全选,但是此单元格依然不能选中 这句话的意思就是把焦点移出去if (ck.HeaderText == " □"){for (int i = 0; i < configGrid.RowCount; i++){configGrid.Rows[i].Cells[0].Value = true;}ck.HeaderText = " √";}else{for (int i = 0; i < configGrid.RowCount; i++){configGrid.Rows[i].Cells[0].Value = false;}ck.HeaderText = " □";}}}private void textGridView_CellContentClick(object sender, DataGridViewCellEventArgs e){if (e.ColumnIndex == 0 && e.RowIndex != -1){int sum = 0;for (int i = 0; i < configGrid.RowCount; i++){//必须使用这个属性 EditedFormattedValue 这个属性也是关键 这里不用value是因为不是实时的数据if ((bool)configGrid.Rows[i].Cells[0].EditedFormattedValue){sum++;}}if (sum == configGrid.RowCount){ck.HeaderText = " √";}else{ck.HeaderText = " □";}}}#endregion
这是要grid要实现的两个方法。对应对象最好时包含iChecked属性,后期查询方便很多。
5.combox的一些基础方法:
classfyDatas.Add(new specialty() { Code = "", Name = "请选择级别" });classfyDatas.Add(new specialty() { Code = "2", Name = "公司级" });classfyDatas.Add(new specialty() { Code = "3", Name = "项目级" });skinComboBox1.DataSource = classfyDatas;skinComboBox1.ValueMember = "Code";skinComboBox1.DisplayMember = "Name";
6.listview的tooltip
private ToolTip toolTip = new ToolTip();private Point pointView = new Point(0, 0);//鼠标位置 外部存储变量private void listView1_MouseMove(object sender, MouseEventArgs e){ListViewItem lv = this.listView1.GetItemAt(e.X, e.Y);if (lv != null){if (pointView.X != e.X || pointView.Y != e.Y)//比较当前位置和上一次鼠标的位置是否相同,防止tooltip因MouseMove事件不停刷新造成的闪烁问题,{//toolTip.SetToolTip(listView1, "双击进入 " + lv.SubItems[0].Text);toolTip.Show(lv.SubItems[0].Text, listView1, new Point(e.X, e.Y), 1000);pointView.X = e.X;pointView.Y = e.Y;toolTip.Active = true;}}else{toolTip.Hide(listView1);//当鼠标位置无listviewitem时,自动隐藏tooltippointView = new Point(e.X, e.Y);//存储本次的鼠标位置,为下次得位置比较准备}}
相关文章:
winform开发心得
最近一直在从事winform的开发,每次都是需要从网上查找资料才能对应具体风格要求,现在总结一下。 ui方面可以使用CSkin对应的一套ui,使用步骤 1.在窗口界面,工具箱空白处点击右键,弹出菜单有个”选择项“,点…...
学习周报-2023-0210
文章目录一 在SUSE11sp3系统中将openssh从6升级到8一 需求二 系统环境三 部署流程1.上传编译安装的软件包2.安装 gcc编译软件3.安装依赖zlib4.安装依赖openssl5.安装openssh二 在CentOS-6.9配置apache服务(3)---虚拟主机配置一 定义二 系统环境三 基于域…...
百度富文本UE的问题集合
百度富文本编辑能上传视频成功但是在浏览器不能播放、显示的问题百度富文本视频封面空白问题百度富文本编辑器UMEditor 添加视频无法删除百度富文本编辑器结果存数据库取出来到js赋值报错怎么让浏览器重新加载修改过的JS文件,而不是沿用缓存里的百度富文本编辑能上传…...
在Linux上安装node-v14.17.3和npm-6.14.13
记录:374场景:在CentOS 7.9操作系统上,安装node-v14.17.3-linux-x64环境。包括node-v14.17.3和npm-6.14.13。node命令应用和npm命令应用。版本:JDK 1.8 node v14.17.3 npm 6.14.13官网地址:https://nodejs.org/下载地址…...
机器学习框架sklearn之特征降维
目录特征降维概念特征选择过滤式①低方差特征过滤②相关系数③主成分分析特征降维 0维 标量 1维 向量 2维 矩阵 概念 降维是指在某些限定条件下,降低随机变量(特征)个数,得到一组“不相关”主变量的过程 注:正是…...
java实现二叉树(一文带你详细了解二叉树的)
🎇🎇🎇作者: 小鱼不会骑车 🎆🎆🎆专栏: 《数据结构》 🎓🎓🎓个人简介: 一名专科大一在读的小比特,努力学习编程是我唯一…...
学弟学妹少走弯路,超完整算法刷题路线出炉
大家好,我是帅地。 本篇文章主要讲解下面三个事: 1、自己学习算法的一些经历 2、大家学习算法存在的一些普遍问题 3、给大家规划的算法刷题路线 一、算法学习往事 记得当初学了 C 语言就开始刷题了,刷题倒不是面试,而是为了…...
Windows截取gif动态图的软件 ScreenToGif 的安装、使用教程
一、概述 👉GIF(Graphics Interchange Format),又称图形交换格式,是一种公用的图像文件格式标准,于1987年由Compu Serve公司成功研发并推出。 👉GIF用于以超文本标志语言方式显示索引彩色图像&a…...
C++程序设计——多态:虚函数、抽象类、虚函数表
注:以下示例均是在VS2019环境下 一、多态的概念 通俗来讲,多态就是多种形态,当不同的对象去完成某个行为时,会产生出不同的状态。即不同继承关系的类对象,去调用同一函数时,产生不同的行为。 比如”叫“这…...
OpenMMLab AI实战营 第6课 语义分割与MMSegmentation
第6课 语义分割与MMSegmentation 1. 语义分割简介 任务:将图像按照物体的类别分割成不同的区域,等价于对每个像素进行分类应用 无人驾驶人像分割智能遥感医疗影像分析 语义分割 vs 实例分割 vs 全景分割 语义分割:仅考虑像素的类别…...
产业互联网是对互联网的衍生和进化,也是一次重塑和再造
互联网并不仅仅只是充当撮合和中介的角色,它应当具备更多的功能和意义。只有这样,它的发展才能够真正全面和完善。产业互联网的衍生和出现,正是在互联网进化的基础之上出现的。这是我们看到之所以会有那么多的互联网玩家投身到产业互联网的浪…...
Shell脚本之——Hadoop3单机版安装
目录 1.解压 2.文件重命名 3.配置环境变量 4.hadoop-env.sh 5.core-site.xml 6. hdfs-site.xml 7. mapred-site.xml 8.yarn-site.xml 9.完整脚本代码(注意修改主机名) 10.重启环境变量 11.初始化 12.启动服务 13.jps查询节点 1.解压 tar -zxf /opt/install/hadoo…...
代码随想录NO39 |0-1背包问题理论基础 416.分割等和子集
0-1背包问题理论基础 分割等和子集1. 0-1背包问题理论基础(二维数组实现)2. 0-1背包问题理论基础 二(一维数组实现)1. 0-1背包问题理论基础(二维数组实现) 背包问题一般分为这几种: 0-1背包问题:有n件物品和一个最多能背重量为w…...
FITC-PEG-FA,荧光素-聚乙二醇-叶酸,FA-PEG-FITC,实验室科研试剂,提供质量检测
FITC-PEG-FA,荧光素-聚乙二醇-叶酸 中文名称:荧光素-聚乙二醇-叶酸 英文名称:FITC-PEG-FA 英文别名:Fluorescein-PEG-Folic Acid 性状:基于不同的分子量,呈白色/类白色固体,或粘稠液体。 溶…...
简洁易懂:源码+实战讲解Redisson并发锁及看门狗自动续期
1 缘起 有一次同事问Redisson存储的键是否为hash? 我当时,没有看Redisson的相关源码,只知道应用, 所以没有办法回答,于是开始看看Redisson实现的源码, 顺便写了一个单机Redisson测试, 发现Redi…...
TCP 三次握手和四次挥手
✏️作者:银河罐头 📋系列专栏:JavaEE 🌲“种一棵树最好的时间是十年前,其次是现在” 目录TCP 建立连接(三次握手)为啥不能是 4 次?为啥不能是 2 次?三次握手的意义:TCP 断开连接(四…...
JavaWeb复习
JavaWeb复习一.概述1.概念2.B/S和C/S 架构二.HTTP通信协议概述1.概念2.HTTP1.0 与 HTTP1.1 版本3.HTTP 协议组成4.常见状态码5.GET 与 POST 请求方式三.Tomcat1.Web服务器介绍2.安装(Windows)3.Tomcat目录结构4.server.xml部分配置解释四.Servlet1.概念2…...
P14 PyTorch AutoGrad
前言:激活函数与loss的梯度PyTorch 提供了Auto Grad 功能,这里系统讲解一下torch.autograd.grad系统的工作原理,了解graph 结构目录:1: require_grad False2: require_grad True3: 多层bakcward 原理4: in…...
前端报表如何实现无预览打印解决方案或静默打印
在前端开发中,除了将数据呈现后,我们往往需要为用户提供,打印,导出等能力,导出是为了存档或是二次分析,而打印则因为很多单据需要打印出来作为主要的单据来进行下一环节的票据支撑, 而前端打印可…...
Operating System Course 2 - My OS
Computer Startup process上一篇:http://t.csdn.cn/XfUKt 讲到这个启动设备的第一个扇区:引导扇区。那么引导扇区的代码长什么样子?这里得看引导扇区代码源文件bootsect.s(.s后缀文件为用汇编语言编写的源代码文件)。另…...
离散数学 课时一 命题逻辑的基本概念
1 命题 1、命题:可以判断其真值的陈述句 2、真值:真或者假(1或者0) 3、真命题:真值为真的命题 4、假命题:真值为假的命题 5、原子命题:不可以再被分解成更简单的命题 6、复合命题:由原子命题通过联结词联结…...
Word文档带有权限密码怎么办?
Word文档的权限密码指的是什么?其实这是Word文档的保护方法之一,具体指Word文档的编辑、修改受到了限制,需要输入密码才能进行。 设置了权限密码的Word文档还是可以直接打开,只有当需要编辑或者修改内容的时候,才会发…...
C++多态
1. 多态的概念1.1 概念多态的概念:通俗来说,就是多种形态,具体点就是去完成某个行为,当不同的对象去完成时会产生出不同的状态举个例子:比如买票这个行为,当普通人买票时,是全价买票;…...
访问学者如何申请美国J1签证?
一、申请美国J1签证的步骤: 第一步:填写I901表。 填写I901表会收取SERVIS费用180美元,可以用VISA/Master卡直接网上支付。填完后打印收据单或者存成PDF后续再打印,记下I901收据编号。 第二步:DS-160表填写。 填写DS-…...
使用gitlab ci/cd来发布一个.net 项目
gitlab runner的安装和基本使用:https://bear-coding.blog.csdn.net/article/details/120591711安装并给项目配置完gitlab runner后再操作后面步骤。实现目标:master分支代码有变更的时候自动构建build。当开发人员在gitlab上给项目打一个tag标签分支的时候自动触发…...
笔试题-2023-蔚来-数字芯片设计【纯净题目版】
回到首页:2023 数字IC设计秋招复盘——数十家公司笔试题、面试实录 推荐内容:数字IC设计学习比较实用的资料推荐 题目背景 笔试时间:2022.08.24应聘岗位:校招-芯片逻辑综合工程师-智能硬件笔试时长:90min笔试平台:nowcoder牛客网题目类型:不定项选择题(15道)、填空题…...
ThreadLocal 详解
ThreadLocal简介JDK源码对ThreadLocal类的注释如下:ThreadLocal提供线程局部变量,使得每个线程都有自己的、独立初始化的变量副本ThreadLocal实例通常是类中的private static字段,用于将状态与线程相关联,如用户ID、事务ID只要线程…...
【Java 面试合集】重写以及重载有什么区别能简单说说嘛
重写以及重载有什么区别能简单说说嘛 前述 这是一道非常基础的面试题,我们在回答的过程中一定要逐一横向比较。 从方法的 修饰符,返回值,方法名,含义,参数等方面进行逐一分析来比较不同。 话不多话,看下…...
到底什么是股票委托接口?
在量化股票市场上,常见的股票委托接口其实有着不一样的交集,就拿股票交易接口,在量化股票跟程序化交易中,有共同之处就是在于直接委托执行下单,并且能很快的就能够将策略输出在账户持仓数据中,继续缓存下来…...
Linux驱动:VPU
1. 前言 限于作者能力水平,本文可能存在谬误,因此而给读者带来的损失,作者不做任何承诺。 2. 概述 VPU 是用来进行图像、视频数据进行硬件编、解码的硬件模块。内部集成了 Encoder、Decoder 功能部件进行图像、视频数据进行硬件编、解码&a…...
茶叶网站建设一般的风格/网站快速推广
相信很多人都知道Windows页表自映射一说,也晓得Linux内核的一一线性映射。然而很多人也仅仅就是知道而已,记住一个结论比理解一个原因要简单得多。上周末,有人极具挑衅态度的问我能否分别用一句话描述它们,我承认我不是布道者&…...
网站设计风格的关键词/近几年的网络营销案例
LINUX指令认识 使用XShell远程登录LINUx 查看Linux的ip ifconfig 1.ls[选项][目录文件] 对于目录,列出目录下所以子目录与文件。对于文件,列出文件名以及其他信息 -a 列出目录下的所有文件,包括以 . 开头的隐含文件。 -d 将目录象文件一样显示…...
html网站两边的浮窗怎么做/如何快速推广app
今天在用批处理进行mysql自动备份的过程中遇到一个问题,错误提示:mysqldump: Got error: 2003: Cant connect to MySQL server on 127.0.0.1 (10061) 批处理命令: echo off echo ------------------------- echo mysql backup echo ----…...
关闭网站弹窗代码/裂变营销
前言Rxjava由于其基于事件流的链式调用、逻辑简洁 & 使用简单的特点,深受各大 Android开发者的欢迎。Github截图RxJava 2.0已于2016 - 10.29正式发布,对 RxJava 1.0进行了1次重大升级:实际使用的API 及 方法有很大的区别但 RxJava 2.0 的…...
网站建设公司做前端/私人网站管理软件
1.1 问题 编写一个send_mail.py脚本,实现以下功能: 1.创建bob和alice帐户 2.编写发送邮件件程序,发件人为root,收件人是本机的bob和alice帐户 1.2 步骤 实现此案例需要按照如下步骤进行。 步骤一:创建bob和alice帐…...
php新闻网站源码/aso推广平台
小白做好前端html设计后,马上开始进入数据库结构设计步骤。 在开始之前,小白回忆了一下老大在公司里培训时讲过的数据库设计解说: 对于初学者来说,很多拿到原型时不知道怎么设计数据表结构,这是很正常的事,…...