winform

WinForm DevExpress使用之ChartControl控件绘制图表二——进阶

萝らか妹 提交于 2019-12-21 11:29:20
1. 多坐标折线图 在这个项目中,我需要做不同采集地方和不同数据类型的数据对比,自然而然就用到了多重坐标轴,多重坐标轴可以是多个X轴,也可以是Y轴,它们的处理方式类似。本文通过项目中的实际例子介绍多重Y轴的形式,希望给大家有一个很好的参考。ChartControl图表控件提供了SecondaryAxisY对象来处理多重坐标的问题。CreateAxisY用来创建一个多重坐标轴的代码如下所示,注意这里多重坐标,使用了和Series一样的View.Color颜色,这样方便区分。 /// <summary> /// 创建图表的第二坐标系 /// </summary> /// <param name="series">Series对象</param> /// <returns></returns> private SecondaryAxisY CreateAxisY(Series series) { SecondaryAxisY myAxis = new SecondaryAxisY(series.Name); ((XYDiagram)chartControl1.Diagram).SecondaryAxesY.Add(myAxis); //判断图形对象是柱状图还是折线图 string type = series.View.GetType().ToString(); if (type ==

DevExpress Winform 利用GridControl开发的会计凭证控件

江枫思渺然 提交于 2019-12-21 05:50:07
总所周知,Dev的控件功能很强大,很多winform的使用者都在用这套控件,做会计这块功能的很多都会用到会计凭证界面,据我所知,目前网上很少有dev的控件来实现这个界面的,很多人都是利用原生datagridview来绘制,虽然功能基本能实现,但是界面风格不统一,为了保持界面的统一下,就需要利用dev的gridcontrol控件开发一个会计凭证的界面呢,应某位群友的要求,利用gridcontrol的多表头advBandedGridView来实现这个需求。 界面效果如下: 分位的内容、显示宽度和分位线颜色可以自由控制; 币种下拉数据源可以绑定; 支持数据源绑定。 如有需要的,可以咨询购买,控件是封装成用户控件,使用起来灵活方便。 售货方式: 1、只购买封装好的dll,引用即可; 2、源码出售; 具体可以私信详谈。 来源: CSDN 作者: 涛神-Dev 链接: https://blog.csdn.net/u012097590/article/details/103592693

WinForm皮肤控件(SkinEngine)

爷,独闯天下 提交于 2019-12-20 10:58:38
利用 IrisSkin2.dll 所提供的控件 SkinEngine 来为窗体添加皮肤。 IrisSkin2.dll 及 皮肤素材,下载地址: http://download.csdn.net/source/1744355 1. 先把IrisSkin2.dll文件添加到当前项目引用(解决方案资源管理器->当前项目->引用->右键->添加引用,找到IrisSkin2.dll文件.....之后就不用我说了吧^_^).IrisSkin2.dll文件最好放在当前项目\bin\Debug文件中. 2. 然后把IrisSkin2.dll文件添加到vc2005的工具箱:右键->选择项->浏览找到IrisSkin2.dll文件(文件最好放在当前项目\bin\Debug文件中)按确定,控件就添加到工具箱中了.然后把工具箱中新添加的 SkinEngine控件拖到当前项目中。 3. 把皮肤目录中的.ssk文件复制到当前项目\bin\Debug文件中,(ssk文件可选). 4. 再在项目中调用.ssk皮肤文件。例: namespace 当前项目 { public partial class Form1 : Form { public Form1() //当前项目的构造器中调用皮肤文件 { InitializeComponent(); this.skinEngine1.SkinFile =

Winform开发框架之框架演化

女生的网名这么多〃 提交于 2019-12-20 09:12:30
国庆去了一趟北京,回来一直忙着各种各样的事情,有公司的,有个人的,就没停过来,所以很久没有写博客了,写博客要有一个好的心情及一个好的思路,否则宁愿不写,这是我的准则。虽然这段时间没有写博客分享各种经验,不过一直还在做一些框架相关的事情,很多东西沉淀下来,慢慢有空就继续分享,与大家做一些探讨研究了。 Winform开发框架方面的文章我介绍很多了,有宏观介绍,也有部分技术细节的交流,每次我希望能从不同角度,不同方面来介绍我的WInform开发框架,这些其实都是来源于客户的需求,真实的项目场景。本文主要介绍Winform开发框架的各种演化,适合在各种系统应用场景下的使用过程。Winform开发框架,从技术方向上讲,可以分为传统的Winform开发框架,WCF开发框架。对于这两种分类,根据数据存放的位置不同,也可以演化成多种应用模式。下面分别对这些演化的Winform框架进行介绍。 1、传统Winform开发框架 我这里指的传统Winform开发框架,就是利用数据库中间件,直接访问数据库的一种应用框架,根据数据库管理系统部署的位置的不同,可能分为单机版(如Access数据库、Sqlite数据库等),局域网网络版(如SqlServer、Oracle等数据库),局域网网络版,一般需要的是把数据库部署在局域网另外一个电脑上,这样应用和数据库分开,也有利于性能的提高和数据的分享。 这种开发模式

WinForm分页控件(大数据量)

倖福魔咒の 提交于 2019-12-20 09:06:49
说到数据分页,大家一定就会想到分页控件,无论是Web的或者是Winform的项目,相信很多人都会去使用分页控件,因为简单吗,可以少敲很多的代码,哈哈,我也是其中的一个,接下来 就把一个比较好的 Winform分页控件和大家分享一下,我会尽量把注释写的详细一点,还请大家多多关注我的博客,我会把更多的 经典的.NET实际应用比较广泛的小例子和大家分享,更多的精品的免费源码尽在天天源码论坛(www.ttyuanma.com) 分页控件的效果图如下: (下载地址在文章的最后)首先我们先把,下载下来的压缩包中的分页控件DLL文件夹中的WinFormPager.dll文件放到你的项目的bin文件夹下,然后在vs2008工具箱的单机鼠标右键,选择-选择项,然后选择浏览,找到你bin中的WinFormPager.dll然后确定,分页控件就添加到你的工具箱中了,接下来在你的项目上引用里右键,选择添加引用,也是浏览找到bin中的WinFormPager.dll,这一步不要忘,否则可能会找不到分页控件,好了接下来看代码吧 首先需要建一个PageData.cs的分页控件数据提供类,代码如下: 分页控件数据提供类 /// <summary> /// 分页控件数据提供类 /// </summary> public class PageData { private int _PageSize = 10;

winform基本控件----按钮

白昼怎懂夜的黑 提交于 2019-12-19 11:52:34
这次来引用一个我们上课时候老师给的一个实验内容,来说一下winform程序设计中的按钮控件的使用。下面是我们老师给的实验内容。 实验目的: 掌握 Winform 的开发环境。 掌握窗体的创建和基本方法。 掌握 Winform 基本控件的使用。 实验要求: 实现多窗体的显示,隐藏以及关闭操作。 实现用户登陆界面 实验内容: 一、 多窗体的交互操作 功能要求:实现多个窗体的显示,隐藏和关闭。 功能解析 ( 可以观看 1-1.SWF 查看题目运行效果 ) (1) 文件组成: 3 个窗体 Welcome.cs :欢迎界面 MainForm.cs :主界面 StuForm.cs :学生系统界面 (2) 功能实现 程序首先打开欢迎界面 ( 如图 1 所示 ) ;单击按钮后,打开主界面 ( 如图 2 所示 ) 并同时关闭欢迎窗口;当单击显示按钮时显示学生系统界面 ( 如图 3 所示 ) ,当单击隐藏按钮时隐藏学生系统。 程序实现 (1) 属性: l 欢迎界面 (Welcome.cs) : 窗体标题显示为”Welcome”; 添加一个按钮,名称为 btn_wel ,文字显示为 ”欢迎进入学生系统”,字号三号, 字体加粗,颜色为红色; l 主界面 (MainForm.cs) : 窗体标题显示为”MainForm”; 添加两个按钮,名称分别为 btn_show 和 btn_hide ,文字显示如图所示

WinForm下屏幕截图程序的实现

我与影子孤独终老i 提交于 2019-12-18 18:49:01
截图程序的代码参考了一个 印度人的博客 还有 周银辉的博客 , 这两位都是用WPF做的, 在截图的时候半透明遮罩都是用的WPF里的Canvas, 但WinForm里没有这个控件, 我想出了另一个办法. 大致思路是按截图按钮后, 打开另一个Form, 这个Form没有边框, 初始就是最大化占满整个屏幕, 背景色为白色, 透明度为50%. 这样就差不多是个半透明遮罩的效果了, 在任务栏显示图标这个属性也要 设为false, 大概这样大家就明白我的意思了. 而在截取屏幕部分图像时, 这部分的半透明色彩要恢复成屏幕这部分的真面目, 所以我想了一个办法, 把这个窗口的TransParencyKey设为CornflowerBlue, 然后在屏幕上画CornflowerBlue这个颜色的矩形框, 这样就可以把这个框框部位的颜色变成屏幕的颜色了. 效果如下图: 那个矩形框是这样绘制出来的: private void Form2_MouseDown(object sender, MouseEventArgs e) { x = MousePosition.X; y = MousePosition.Y; isMouthDown = true; } private void Form2_MouseMove(object sender, MouseEventArgs e) { if (isMouthDown

C# WinForm 功能代码备忘-刘欣

折月煮酒 提交于 2019-12-18 16:00:32
日志记录处理 //日志处理(1/4) public static StreamWriter sw = new StreamWriter("SAPsenderlog.txt", true, Encoding.GetEncoding("gb2312")); public void ps(ListBox box,string s) { String line = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + " " + s; box.Items.Add(line); //日志处理(2/4) sw.WriteLine(line); } //日志处理(3/4) sw.Flush(); //缓存区写文件 //日志处理(4/4) sw.Close(); 按钮中的线程启动: //取数线程启动 private void toolStripButton1_Click(object sender, EventArgs e) { //线程启动 Control.CheckForIllegalCrossThreadCalls = false; Thread lsThread = new Thread(new ThreadStart(T1)); lsThread.IsBackground = true; lsThread.Start(); } private

一个用c#写的winform小系统基于SQL servel(二)

≯℡__Kan透↙ 提交于 2019-12-18 05:19:28
二.管理员和普通用户的注册界面 1.管理员注册界面 管理员注册时,如果用一个信息为空,就会提示填写信息不全,无法注册,当都不为空时 如果两次填写的密码不一致也会无法注册,如果注册的信息已存在,同样是无法注册 代码如下 using System ; using System . Collections . Generic ; using System . ComponentModel ; using System . Data ; using System . Drawing ; using System . Linq ; using System . Text ; using System . Threading . Tasks ; using System . Windows . Forms ; using System . Data ; using System . Data . SqlClient ; namespace _112管理系统 2. _0 { public partial class Form_adimn : Form { public Form_adimn ( ) { InitializeComponent ( ) ; } public int t = 0 ; public void Panduan ( ) //函数功能是判断注册信息是否已存在 { if (

winform 分页控件,源码下载

核能气质少年 提交于 2019-12-18 02:27:05
http://files.cnblogs.com/nosnowwolf/Pager.rar 控件下载 以前都是从事B/S开发,由于公司有个比较大的C/S项目,在使用DATAGRIDVIEW的时候,显示数据量比较大,所以才用分页模式,也不知道这样是否正确。 想找个C/S下面的分页控件,都没有什么好的,就自己跟B/S下的分页控件,修改成WINFORM下面的。 首先创建一个用户控件名称为pager,在控件中拖入bindingNavigator和bindingSource,修改bindingNavigator,加入必要的一些控件。 效果如下: 代码实现如下: namespace WindowsApp.MyControl { /**/ /// <summary> /// 申明委托 /// </summary> /// <param name="e"></param> /// <returns></returns> public delegate int EventPagingHandler(EventPagingArg e); /**/ /// <summary> /// 分页控件呈现 /// </summary> public partial class Pager : UserControl { public Pager() { InitializeComponent(); }