c#
青箬笠绿蓑江船行
追风的少年
展开
-
vs2010安装问题
安装过程完全是参照例程完成但建立mfc模板程序就会提示各种错误原创 2015-08-23 22:35:32 · 348 阅读 · 0 评论 -
VS中的预先生成事件和后期生成事件
在C#开发中,有时候需要在程序编译之前或之后做一些操作。 要达到这个目的,可以使用Visual Studio中的预先生成事件和后期生成事件。 下图是一个简单例子: 将工程目录中的一些资源文件和库文件拷贝到debug目录下 指定预先生成命令行 1. 在“解决方案资源管理器”中,右击要为其指定预先生成命令行的数据库项目,再单击“属性”。 2. 在“...转载 2018-03-15 14:02:53 · 2755 阅读 · 0 评论 -
C#调用C++的dll两种方法(托管与非托管)
C#调用C++的dll两种方法(托管与非托管)C#调用C++的方式分为两种:(1)非托管的方式进行调用;(2)采用托管的方式进行调用。一、使用非托管类调用C++的dll。1、首先在vs2010新建项目选择win32应用程序,并设置为DLL,如下图所示 2、添加MyDLL.cpp源文件,其中代码:#include #include extern "C" _转载 2018-01-08 03:15:23 · 1206 阅读 · 0 评论 -
架构设计的关键原则
关键的设计原则在开始设计之前,思考一下关键的原则,将会帮助你创建一个最小花费、高可用性和扩展性的架构。分离关注点,将应用划分为在功能上尽可能不重复的功能点。主要的参考因素就是最小化交互,高内聚、低耦合。但是,错误的分离功能边界,可能会导致功能之间的高耦合性和复杂性,职责单一,每一个组件或者是模块应该只有一个职责或者是功能,功能要内聚。最小知识原则,一转载 2017-12-08 01:31:33 · 799 阅读 · 0 评论 -
C# 使用资源文件 Resource.resx 的方法
在写程序时, 可以把用到的 图标,图片,声音等外部资源,放在一个 .resx (资源文件)中. 这样的好处是不用考虑什么路径的问题.而且还对资源有保护的做用.1.创建一个 ResourceFile.resx 文件. (ResourceFile 可以为自定义的任意名称)2.向ResourceFile.resx 里添加资源文件 .3.可以直接在C# 文件中这样使用: 比如:主窗体转载 2017-12-01 15:14:08 · 9277 阅读 · 0 评论 -
c#空合并运算符号的用法
1. 可空类型修饰符(?):引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空。例如:string str=null; 是正确的,int i=null; 编译器就会报错。为了使值类型也可为空,就可以使用可空类型,即用可空类型修饰符"?"来表示,表现形式为"T?"例如:int? 表示可空的整形,DateTime? 表示可为空的时间。T? 其实是System.Nullable转载 2017-11-30 19:40:02 · 402 阅读 · 0 评论 -
AssemblyInfo.cs文件详解
.Net魔法堂:AssemblyInfo.cs文件详解一、前言 .net工程的Properties文件夹下自动生成一个名为AssemblyInfo.cs的文件,一般情况下我们很少直接改动该文件。但我们实际上通过另一个形式操作该文件。那就是通过在鼠标右键点击项目的属性进入“应用程序”->“程序集信息”,然后修改信息转载 2017-11-30 15:33:24 · 1644 阅读 · 0 评论 -
C#.NET dll封装(包含UI和实现函数),通过反射调用dll实现控件的快速加载(PointListTypeAttributes.cs)
using System;using System.Collections.Generic;using System.ComponentModel;using System.Drawing;using System.Linq;using System.Reflection;using System.Runtime.Versioning;using System.Text;using原创 2017-11-11 20:51:55 · 646 阅读 · 0 评论 -
C#.NET dll封装(包含UI和实现函数),通过反射调用dll实现控件的快速加载(PrimPointListCreator.cs)
using System;using System.Collections.Generic;using System.Linq;using System.Text; using Tztek.XBus.Task.TaskPrimMode;namespace Tztek._3DSpec.Prims.PointList{ public class CalibPointSetCrea原创 2017-11-11 20:49:38 · 432 阅读 · 0 评论 -
C#.NET dll封装(包含UI和实现函数),通过反射调用dll实现控件的快速加载(PrimPointList.cs)
using System.Windows.Forms.VisualStyles;using InterfaceStruct;using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Reflection;using System.Text;using Sy原创 2017-11-11 20:42:54 · 482 阅读 · 0 评论 -
CSV文件读取
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;using System.IO;namespace csv文件读取{ class Program { static void Main(string[原创 2017-08-03 09:33:39 · 610 阅读 · 0 评论 -
Datagridaview使用
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原创 2017-08-03 09:24:52 · 217 阅读 · 0 评论 -
C# datagridview使用
DataGridView是用于Windows Froms 2.0的新网格控件。它可以取代先前版本中DataGrid控件,它易于使用并高度可定制,支持很多我们的用户需要的特性。在过滤显示数据库列表列表上有其不可代替的优势,同时对于实时显示对象多个属性上也很方便。 在datagridview上显示二维数组的demo,矩阵可以转化为数据显示,数据库中的数据基本上可通过其显示。在w原创 2017-06-29 19:22:53 · 684 阅读 · 0 评论 -
c#转义字符
C#转义字符:·一种特殊的字符常量;·以反斜线"\"开头,后跟一个或几个字符。·具有特定的含义,不同于字符原有的意义,故称“转义”字符。·主要用来表示那些用一般字符不便于表示的控制代码。 ·它的作用是消除紧随其后的字符的原有含义·用一些普通字符的组合来代替一些特殊字符,由于其组合改变了原来字符表示的含义,因此称为“转义” ·用可以看见的字符表示那不可以看见的字符, 如'转载 2017-05-03 13:41:29 · 672 阅读 · 0 评论 -
c#中 DllImport用法汇总
最近使用DllImport,从网上google后发现,大部分内容都是相同,又从MSDN中搜集下,现将内容汇总,与大家分享。大家在实际工作学习C#的时候,可能会问:为什么我们要为一些已经存在的功能(比如Windows中的一些功能,C++中已经编写好的一些方法)要重新编写代码,C#有没有方法可以直接都用这些原本已经存在的功能呢?答案是肯定的,大家可以通过C#中的DllImport直接调用这些功转载 2016-12-19 13:35:12 · 382 阅读 · 0 评论 -
c#中利用 AutoResetEvent和ManualResetEvent实现线程同步
概念: 线程的本质 线程不是一个计算机硬件的功能,而是操作系统提供的一种逻辑功能,线程本质上是进程中一段并发运行的代码,所以线程需要操作系统投入CPU资源来运行和调度。 线程,有时被称为轻量级进程(Lightweight Process,LWP),是程序执行流的最小单元。一个标准的线程由线程ID,当前指令指针(PC),寄存器集合和堆栈组成。 线程同步是多个线程同时原创 2016-08-23 10:58:52 · 668 阅读 · 0 评论 -
devexpress14.2 结合datatable画piechart
private DataTable CreateChartData() { DataTable table = new DataTable(); // Declare DataColumn and DataRow variables. DataColumn column; ...原创 2018-08-08 17:31:33 · 280 阅读 · 0 评论