摘要:
名称:快速入门地址http://chs.gotdotnet.com/quickstart/描述:本站点是微软.NET技术的快速入门网站,我们不必再安装.NET Framework中的快速入门示例程序,直接在网上查看此示例即看。****************************************************名称:微软官方.NET指导站点地址http://www.gotdotn... 阅读全文
摘要:
下面的代码为如何生成一个圆形的按纽的方法,主要功能的实现为调用了一系列的API来实现的.[System.Runtime.InteropServices.DllImport("gdi32")]private static extern IntPtr BeginPath(IntPtr hdc);[System.Runtime.InteropServices.DllImport("gdi32")]pri... 阅读全文
摘要:
八、 提供可交互的属性视图 当你在Visual C# .NET中创建一个项目的时候,你可能会注意到属性窗口的工具栏上有一个像闪电的按钮,按下这个按钮属性窗口就会切换到事件视图,这样就可以来编辑事件处理了。 属性窗口的视图来自“属性页(Property Tabs)”,因此视图使用的最主要的类是PropertyTab,命名空间是System.Windows.Forms.Desi... 阅读全文
摘要:
七、 编写和显示订制的类型 属性窗口中的编辑有如下三种工作方式:一,有些场合可以作为字符串来编辑,然后由TypeConverter来实现类型的转换。二,可以显示一个下拉列表来选择值。三,一个省略按钮提供其他的UI界面来编辑值,比如FileDialog和FontPicker。我们已经讲过了字符串形式,接着我们就来看下拉列表。 .NET framework已经包含了好几种下拉列表的例子,如Color,... 阅读全文
摘要:
六、 扩展属性和字符串转换:TypeConverter和属性窗口 .NET属性窗口最重要的一个特性就是可以显示嵌套的属性,这样就提供了比属性类别更加细化和更有逻辑的分类。嵌套属性对于类目显示和排序显示都是适用的。这样可以让属性列表更加紧凑。比如我们用带有子属性X和Y的一个Location属性来代替Top和Left两个属性就更加合理。 不过,如何来决定一个属性可以展开呢?这些不是由属性窗口来决定,而... 阅读全文
摘要:
五、 基础知识:使用Attribute来订制属性窗口的显示 控制显示的机制和用IDL定义的组件是一样的,不过是增加了元数据特性。控制显示使用最普遍的特性是BrowsableAttribute。默认状态下,属性窗口显示对象中定义的所有的公开的、可读的(即public、有get或者set方法的)属性,并且把他们放在“杂项(Misc)”类别中。下面是一个简单的组件例子: publ... 阅读全文
摘要:
一、 摘要: 这篇文章将告诉你如何开发与.NET属性窗口交互的RAD组件 二、 内容: 简介 属性窗口可以做什么 基础知识:使用Attribute来订制属性窗口的显示 扩展属性和字符串转换:TypeConverter和属性窗口 编写和显示订制的类型 提供可交互的属性视图 我们同样可以使用它 结论 三、 简介 在Visual Basic中,属性窗口是真正实现快速应用开发的一个关键工具(RAD:Rap... 阅读全文
摘要:
using System;using System.Collections;using System.ComponentModel;using System.Drawing;using System.Data;using System.Windows.Forms;namespace WindowsExtendedControls{ /// <summary> /// 控件 /// &l... 阅读全文
摘要:
钩子其实就是调用一下API而已:1、安装钩子: SetWindowsHookEx 函数原形:HHOOK SetWindowsHookEx( int idHook, // 钩子类型, HOOKPROC lpfn, // 钩子函数地址 INSTANCE hMod, // 钩子所在的实例的句柄, DWORD dwThreadId // 钩子所监视的线程的线程号 ) hMod: 对于线程序钩子,参数... 阅读全文
摘要:
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Runtime.InteropServices;names... 阅读全文
摘要:
利用WINDOWS消息循环的机制传递自定义的结构体在编程的过程中可能经常会用到,在这里我就编写了一个简单的结构体的传递代码,需要注意的是类是不能够传递的,能进行传递的只能是结构体using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawin... 阅读全文
摘要:
一、最小化窗口 点击“X”或“Alt+F4”时,最小化窗口, 如: protectedoverridevoidWndProc(refMessagem) { constintWM_SYSCOMMAND=0x0112; constintSC_CLOSE=0xF060; if(m.Msg==WM_SYSCOMMAND&&(int)m.WPa... 阅读全文
摘要:
这个是我利用底层钩子技术扩展的一个颜色对话框,下面就分析代码:using System;using System.Collections.Generic;using System.Text;using System.Windows.Forms;using System.Runtime.InteropServices;using System.Drawing;using CustomCommonDi... 阅读全文
摘要:
#region 绘制圆角矩形区域 internal static GraphicsPath CreateRoundedRectanglePath(Rectangle rect, int cornerRadius) { GraphicsPath roundedRect = new GraphicsPath(); roundedRect.AddArc(rect.X, rect.Y, cornerRa... 阅读全文
摘要:
每一个从Control类中派生出来的WinForm类(包括Control类)都是依靠底层Windows消息和一个消息泵循环(message pump loop)来执行的。消息循环都必须有一个相对应的线程,因为发送到一个window的消息实际上只会被发送到创建该window的线程中去。其结果是,即使提供了同步(synchronization),你也无法从多线程中调用这些处理消息的方法。大多数plum... 阅读全文
摘要:
using System;using System.Collections.Generic;using System.Text;using System.Runtime.InteropServices;namespace WebService1{ /// <summary> /// DllInvoke 的摘要说明 /// </summary> public class Dl... 阅读全文
摘要:
尝试着在C#下调用以前Delphi写的一些DLL,基本实现动态调用,传入回调函数,及调用带结构数组指针作为参数的函数. 虽然DllImport可以方便的静态调用DLL的函数,但在.net2.0中新增加了一个Marshal.GetDelegateForFunctionPointer 方法,可以将非托管函数指针转换为委托。 有了这个方法就可以用三个Windows API函数即:Loadlibrary,... 阅读全文
摘要:
方法一:1、WIN+ R键调出运行窗口,输入regedit 调出注册表编辑器 2、依次展开注册表到如下分支:KEY_CLASSES_ROOT\Directory\Background\ shellex\ContextMenuHandlers\New,然后在右侧窗口中新建一字符串值,并将其赋值为{D969A300-E7FF-11d0-A93B-00A0C90F2719}第二种:在第一种的办法无效的前... 阅读全文