2018-08-09 16:44:51
窗体代码: public partial class Form1 : Form
{
eventTest event1 = new eventTest();
public Form1()
{
InitializeComponent();
event1.disEvent += event...
2018-08-09 08:12:49
命名空间:netMarketing.winformHelper功能:动态构建属性功能详细说明:propertyGridHelper类用来动态构建属性。XProp类代表一条属性,XProps是多个XProp的集合类。这个类的优点在于可以动态设定propertyGrid控件的属性,传统的使用预定义标签与初始化代码实现的效果是固定的,是不可以增减的。这个类也有一个缺点,就是不好使用Settings类将用...
2018-08-08 13:16:45
Partial是局部类型的标志。局部类型可以实现将一个类、结构或接口分成几个部分,分别放在在几个不同的.cs文件中(当然也可以放在同一个.cs文件中)。在程序进行编译之后,将会合并成一个完整的类。因此局部类型并没有看起来那么难以理解,使用partial只是让类变得更容易管理,实际使用时和普通的类一样。适用范围: (1)类型特别大,不适合放在一个文件中实现。 (2) 一个类型中的一部分代码为自动化工...
2018-08-08 08:32:58
一,为DataTable设置主键如果我们为DataTable设置一个主键,那么我们就可以根据主键在DataTable中查到唯一的数据。为什么是唯一的数据呢?因为根据主键查出来的记录永远都是唯一的,呵呵,要不然它与DataTable的Select方法是一样的效果了。当然,利用DataTable.Select("能确定唯一的条件").Rows[0]也可以找到与利用主键查找到的一样的...
2018-08-05 16:04:40
为了快速体验一下C#的dataGridView控件,写了这段演示代码。请新建一个form,拖入一个dataGridView控件。然后添加下面的代码。效果如下:代码:using netMarketing.Interface.FormAbout;
using netMarketing.winformHelper;
using System;
using System.Collections.Ge...
2018-08-03 09:40:49
这个3个关键字貌似不是很常用。C#语法跟Java很接近,但是在Java里面也没有这些关键字。我在网上搜罗了一些资料,希望能够帮助我们更好的理解这些关键字。MSDN资料:http://msdn.microsoft.com/zh-cn/library/39bb81c3.aspx首先,explicit和implicit关键字分别表示显式的类型转换和隐式的类型转换。explicit 和 implicit...
2018-08-01 16:25:11
PropertyGrid,.net框架下的一个控件,这是一个软件升级的项目,原来的软件用的是C++,控件用的还是第三方,这次升级到visual studio .net4.0版本,原以为.net的东西用起来不会费劲的,没想到想要实现项目需要的效果还真没那么简单。 由于需要,我这里主要是为了能动态的生成属性页,还要带能动态生成下来菜单,所以今天主要从这方面总结。 首先定义一个属性类://单条属性类pu...
2018-07-30 08:44:52
在项目开发过程中,估计也有人和我遇到过同样的经历:运行环境出现了重大Bug亟需解决、或者由于电脑挂了、旧代码覆盖新代码,而在这种情况下,我们不能直接在当前的代码中修改这个Bug然后发布,这会导致更严重的问题,因为相当于版本回退了。还有电脑挂了代码整个都没有,这种情况下 我们只能只能利用一些逆向的技巧和工具了 来解析在服务器发布好的dll。那么你只是单纯的修改一个.Net程序集中的某个方法或功能,而...
2018-07-27 13:44:18
目录什么是静态常量(Const)和动态常量(Readonly)静态常量(Const)和动态常量(Readonly)之间的区别动态常量(Readonly)被赋值后不可以改变总结什么是静态常量(Const)和动态常量(Readonly) 先解释下什么是静态常量(Const)以及什么是动态常量(Readonly)。 静态常量(Const)是指编译器在编译时候会对常量进行解析,并将常量的值替换成初始化...
2018-07-26 16:20:34
Type.GetType()在跨程序集反射时返回null的解决方法在开发中,经常会遇到这种情况,在程序集A.dll中需要反射程序集B.dll中的类型。如果使用稍有不慎,就会产生运行时错误。例如使用Type.GetType("BNameSpace.ClassName")在程序集A.dll获取程序集B.dll中的类型,就会返回Null。关于跨程序集的反射,有两点需要注意: 1、如果...
2018-07-24 21:53:44
在netMarketing/winformHelper/dynMenu.cs 这个类是动态菜单的业务逻辑。它的配置窗体位于另一个工程 UserUI/Dialog/dynMenuSteup.cs 中。dynMenuSteup.cs 包含了netMarketing类的引用。但是netMarketing类中又想弹出UserUI工程中的对话窗,但是你不可能再包含UserUI的引用,因为这样就是循环引用了。...
2018-07-24 17:09:41
c# 中 Abstract和Virtual比较容易混淆,都与继承有关,并且涉及override的使用。下面讨论一下二者的区别:一、Virtual方法(虚方法) virtual 关键字用于在基类中修饰方法。virtual的使用会有两种情况: 情况1:在基类中定义了virtual方法,但在派生类中没有重写该虚方法。那么在对派生类实例的调用中,该虚方法使用的是基类定义的方法。 情况2:在基类中定义...
2018-07-23 22:05:12
如果你直接绑定DataTable表,如下面代码:listBox1.DataSource = dt;则会出现下图现象:正确做法见代码:using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using...
2018-07-22 10:49:51
转载自: https://blog.csdn.net/zhujunxxxxx/article/details/44303743 文章系列目录C#网络编程系列文章(一)之Socket实现异步TCP服务器 C#网络编程系列文章(二)之Socket实现同步TCP服务器C#网络编程系列文章(三)之TcpListener实现异步TCP服务器C#网络编程系列文章(四)之TcpListener实现同步TCP服务...
2018-07-21 22:10:50
invoke和begininvoke 区别一直对invoke和begininvoke的使用和概念比较混乱,这两天看了些资料,对这两个的用法和原理有了些新的认识和理解。 首先说下,invoke和begininvoke的使用有两种情况: 1. control中的invoke、begininvoke。 2. delegrate中的invoke、begininvoke。 这两种情况是不同的,我们...
2018-07-21 11:11:41
EventArgs是包含事件数据的类的基类,用于传递事件的细节。今天分享的是使用泛型来约束EventArgs,在事件里传递自定义数据的例子。正题由于这个关注点很小,直接上代码了。定义泛型类TEventArgs:public class TEventArgs<T> : EventArgs
{
public TEventArgs(T t)
{...
2018-07-19 13:51:19
要使用Dictionary集合,需要导入C#泛型命名空间 System.Collections.Generic(程序集:mscorlib) Dictionary的描述1、从一组键(Key)到一组值(Value)的映射,每一个添加项都是由一个值及其相关连的键组成2、任何键都必须是唯一的3、键不能为空引用null(VB中的Nothing),若值为引用类型,则可以为空值4、Key和Value可以是任何类...
2018-07-19 08:52:43
csv格式如果有逗号,将这个字段整体用双引号括起来;如果里面还有双引号就替换成两个双引号,这样导出来的格式就不会有问题了/**
* 方法名称: csvHandlerStr</br>
* 方法描述: 处理包含逗号,或者双引号的字段</br>
* 方法参数: @param forecastName
* 方法参数: @return </br>
*...
2018-07-18 20:55:15
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 事件1
{
class Program
{
static void Main(string[] args)
{...
2018-07-18 16:20:59
本类库采用TcpLister,TcpClient高度封装,采用NetworkStream进行异步模式读取数据.采用Semaphore来进行并发控制,放弃异步的最大原因还是在对于新手朋友来说难以理解异步的处理方式,在本类库中还有一个没有加入工程的asynchelper,这个类库是纯异步实现.当前处理方式: 异步+同步 ,海量数据并发不是靠异步就能解决的问题,在对学习Socket和想快速使用Sock...
2018-07-18 13:16:11
原文链接:https://blog.csdn.net/luyifeiniu/article/details/5426960最近项目中做一模块时偶发奇想,希望使用propertygrid的控件实现类似visual studio的属性样式,于是拿来一用,发现还真不是自己想象的那么简单,如果要实现一个比较好的展示,还真的需要不少技巧,通过自己的实践和网络的力量,“逢山开道,遇水搭桥”,总算是摸出一些门道...
2018-07-17 22:00:03
C# 利用数据库和MenuStrip控件动态生成菜单,设计如图一,拖一个Menustrip控件。
设计实现如下:
1、数据库设计:
列名
数据类型...
2018-07-17 17:06:28
一、 设置索引和试图DataTable的Select方法可以对一个表进行筛选和查询,返回的是数据表中可用行的一个子集,这样本来是很方便的,但是如果数据表比较大,而且需要重复对这个表进行相同的查询,那么资源的使用效率就无法达到最佳,另外Select方法返回的是DataRow数组,而不是一个DataTable,所以一些需要一张完整表才能处理的工具就不能对返回的数据行数组进行处理了。为了...
2018-07-15 21:54:32
namespace UDPServer{ class Program { static void Main(string[] args) { int recv; byte[] data = new byte[1024]; //构建TCP 服务器 //得到本机IP,设置TC...
2018-07-15 21:13:46
VS2017改为在线安装模式,由于是外线,下载速度是相当感人。因此你可以选择我下载好打包的文件。离线文件大约15G。共4个分卷文件。选择安装组件时,可以选择的内容很多。我把所有内容截图供大家参考:乎略账号登录,然后就是选择编辑器主题。启动完成后的vs界面:网上有共享的密钥,本人测试可用!急不可耐试试创建工程,看看跨平台的支持。这是Android的支持。ios平台的支持,包括iphone和ipadp...
2018-07-08 09:50:21
在前几篇文章中([搜房网房产数据采集程序demo--GeckoWebBrowser实例] )都有提到一个解析html的C#类库HtmlAgilityPack,今天终于有时间整理一下,并把Demo分享一下。HtmlAgilityPack是一个基于.Net的、第三方免费开源的微型类库,主要用于在服务器端解析html文档(在B/S结构的程序中客户端可以用Javascript、jquery解析html)。...
2018-06-26 18:06:02
笔者是音乐爱好者,喜欢抖音上的各种音乐。于是制作了这个小软件,它功能很简单:利用酷狗接口搜索关键字音乐勇哥2020/2/18号注: 程序里目前使用的接口已经做旧,不能在使用,需要读者自己去分析新接口。在线播放音乐显示歌词可以下载音乐这个小程序用到了Json解析,还有http下载网络资源等技术。请参考下面的源代码:(第一次读取搜索列表取得的某一条歌曲的数据内容)using Cosmokey.Util...
2018-06-26 17:02:12
示例代码如下:public struct SpiderResult
{
public string robotName;
public string RobotName
{
get { return robotName; }
set { robotName = val...
2018-06-26 15:12:50
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
u...