先说一些背景: 在开发C#项目时,发现很多控件存在复用的情况,控件的属性都是要设置成一样的,我就想,能不能设置一个类来存放这个控件,这样我每次用的时候直接加一些特殊的操作就可以了,不需要再次设置控件属性。 搜索一段时间,自定义控件是可以满足需求的,它可以开发继承现有控件的自定义控件,这样我就可以封装起来做自己的控件库了。 在完成自定义控件后,我根据MSDN的Demo指导,在另一个项目中添加了这个引用(...
前言 前几天的一个数据列表中我用了Linq GroupBy 和OrderBy。 排序在本机正常使用,发到测试后排序死活不对,很是郁闷,总以为是程序问题。于是请教了另外一个同事。有了以下的答案。 问题原因和解决方法 因为服务器装的是英文版操作系统,没有中文包,所以碰见中文排序无法识别,所以使用OrderBy时需要单独处理下。 CultureInfo culture = CultureInfo.GetCultureInfo("zh-cn");List<TeamDto> teamDtos = teams.GroupBy(x...
使用了Win8.1 With Update 1后,发现重启系统后,当前激活的窗口总是每隔几秒失去焦点,过0.5~1秒焦点回来,导致输入无法正常工作,严重影响使用心情和效率。在网上找了很久,也没找到相应的解决办法,大多提供的是关闭计划任务中禁用阿里巴巴的自动更新任务(http://www.paopaoche.net/gonglue/21442.html)。可是这个方法对我来说并不管用,而且那种是1小时运行一次,我的系统是每隔几秒就会出现一次。忍受了1周,忍无可忍,于是...
采用Senparc.Weixin SDK服务器端代码:using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Senparc.Weixin.MP.CommonAPIs;
using Senparc.Weixin.MP.Helpers;
using Senparc.Weixin.Exceptions;namespace Stock.weixin
{public partial class wxShare : System.Web.UI.Page{public string timestamp = string.Empty;public stri...
1.使用System.Windows.Forms命名空间下的WebBrowser控件加载网页并生成图片GiHub参考地址:https://github.com/tianma3798/FileOparate/ 使用方法:publicstaticvoid TestOne()
{ThumbnailImg img = new ThumbnailImg("e:\\one.png");//img.SetToJpeg();//img.SetToGif();ThumbnailOperate _operate = new ThumbnailOperate("http://korea.weilanliuxue.cn", img);_operate.GenerateImg();Console.WriteLine("保存成功");
} 核心代...
string ss = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; Random a = new Random(); int b; string yan = ""; for (int i = 0; i < 4; i++) { b = a.Next(62); yan += ss.Substring(b, 1); } Console.WriteLine("验证码是:" + yan); Console.Write("请输入验证码:"); ...
方法一首先定义类,将此类放在datagridview或ListView所在的窗体类外面,然后代码如下,// <summary>
/// 双缓冲DataGridView,解决闪烁
/// 使用方法:在DataGridView所在窗体的InitializeComponent方法中更改控件类型实例化语句将
/// this.dataGridView1 = new System.Windows.Forms.DataGridView(); 屏蔽掉,添加下面这句即可
/// this.dataGridView1 = new DoubleBufferListView();
/// </summary>
class DoubleBufferDataGr...
曾经这个问题困扰我多天最后查资料一大堆,最后终于解决了,看到很多人做C#串口都遇到同样的问题,所以写一篇博文,以便学习交流。一定要在com实例化的时候设置ReceivedBytesThreshold 属性就可以 SerialPort com = new SerialPort();
com.BaudRate = 19200;
com.PortName = "COM1";
com.DataBits = 8;
com.Parity = (Parity)0;
com.StopBits = 1;
...
这个问题出现在在使用VS编码当中,电脑意外关机,导致的文件的缺失或者损坏。 使用反编译软件(如:ILSpy)对编译后的 .EXE文件进行反编译,在翻遍的结果中将相关代码拷贝至目标路径下,替换所需文件。 按照目标文件的格式,选择性粘贴(例如winform 中*.cs 和 *.Design.cs文件,存储各自所需的文件)PS:注释不参与编译,所以反编译的结果中没有注释,只有纯代码。原文:https://www.cnblogs.com/clgis/p/14669435.html
1.首要需要有以下三个文件Sybase.Data.AseClient.dllsybdrvado11.dllsybdrvssl.dll在程序运行目录,或者在System32下 2.如果以上不行,选择项目的生成目标平台为x86 3.确保System32下有msvcr71.dll以及msvcp71.dll文件 文件下载 这个下载链接,包含以上提到的五个文件 下面是错误的详细信息: System.TypeInitializationException: “Sybase.Data.AseClient.AseConnection”的类型初始值设定项引发异常。 ---> System.DllNotFoun...
解决并发的方案,应用场景,一个报名的方法,可是要限制报名的人数:一,如果是单机版,就是部署一个服务器站点的我们可以使用很经典的lock锁,或者queue队列,针对单机版二,如果是部署了集群的站点1》我们可以利用redis的单线程的特点,定义一个redis值,并发去取这个值来判断人数的多少2》利用队列kafka,rabbitmq或者微软的MSMQ,具体实现逻辑:1,在报名方法插入队列2,写一个window服务,去执行队列的,报名原文:https://www...
最近从师兄手上接了一个C#的项目,需要用到MDI窗体,可是每当我显示子窗体的时候会有一次“闪烁”,很明显,看起来非常不爽,查找许久,知道是每次在show()子窗体的时候都会调用子窗体构造函数重绘窗体,其中需要将子窗体的尺寸调整到我在程序中设置的大小,无论我这样设置,这个窗口大小变化总会在show()的时候显示出来,我试过网上说的设置双缓冲、先隐藏窗体等启动之后再显示、借助定时器设置窗体的opacity属性,可是问题依旧,...
问题没有解决。。。。暂时放弃。书 精通C# 3.3.4提到使用System.Windows.MessageBox类。经搜索,发现这个类在System.Windows.Form下。 我设想,第一步在项目里添加System.Windows.Forms引用。然后第二步using 就可以用了。 结果在第一步,添加引用的时候失败了。 后来发现项目自带System.Windows.Forms。不过没有MessageBox类 原文:https://www.cnblogs.com/JuniorProgramer/p/14083335.html
导致画面闪烁的关键原因分析: 一、绘制窗口由于大小位置状态改变进行重绘操作时,绘图窗口内容或大小每改变一次,都要调用Paint事件进行重绘操作,该操作会使画面重新刷新一次以维持窗口正常显示。刷新过程中会导致所有图元重新绘制,而各个图元的重绘操作并不会导致Paint事件发生,因此窗口的每一次刷新只会调用Paint事件一次。窗口刷新一次的过程中,每一个图元的重绘都会立即显示到窗口,因此整个窗口中,只要是图元所在的...
C# 5.0中引入了async 和 await。这两个关键字可以让你更方便的写出异步代码。看个例子: 可以看到,async和await关键字只是把上面的代码变得更简单易懂而已。 publicclass MyClass
{ public MyClass() { DisplayValue(); //这里不会阻塞 System.Diagnostics.Debug.WriteLine("MyClass() End."); } public Task<double> GetValueAsync(double num1, double num2) { return Task.Run(() => { for (int i = 0; i < 100000...