C#迅雷七窗体特效,使用DWM实现Aero Glass效果
从Windows Vista开始,Aero Glass效果被应用在了Home Premium以上的系统中(Home Basic不具有该效果)。这种效果是由DWM(Desktop Window Manager)来控制的。对于一般的程序,缺省将在窗口边框应用这种效果。但如果我们想要更多的控制,比如让客户区的一部分也呈现这种效果,那也非常的简单。不需要我们在程序里做任何复杂的算法,我们只需要调API,交给DWM去做就可以了。一、Composition(窗口合成) and Non-client Rendering(非客户区渲染) 非客户区通常包括窗口...
C#桌面图标弹出提示
之前看见过某些软件,安装完毕后会在桌面图标的旁边弹出一个提示框.然后就尝试着自己也实现一下这个效果.先来看看最终效果: 实现方法首先,必须知道图标在屏幕上的位置.用SPY类工具探测了一下(这里我用的是彗星小助手),发现"桌面"是一个ListView控件,既然是这个控件,那就可以发送LVM_GETITEMTEXT消息来获取各个图标的名称,判断哪个是我们要找的.然后发送LVM_GETITEMRECT消息获取图标的位置.最后在图标旁边创建一个提示窗口,这里我使用了UpdateLayeredWindow需要注意的是:在64位操作系统上,LVM_GETI...
在datagridview里添加自定义控件列
1、定义一个控件如:commbox//定义下拉列表框、隐藏控件、在datagridview中添加控件 private ComboBox datacmb=new ComboBox(); datacmb.Visible = false; this.dataGridView1.Controls.Add(datacmb); 2、添加datagridview的CurrentCellChanged事件 private void dataGridView1_CurrentCellChanged(object sender, EventArgs e) { try { if (this.dataGridView1.CurrentCell.ColumnIndex == 4) ...
PowerDesigner从数据库生实体成到PD中,power designer逆向工程
第一步,打击DATABASE菜单。第二步:弹出Configure Data Connections窗口 第三步,选择系统数据源。第四步,选择你需要的数据库。第五步:进行数据库的IP地址和SA账号的设置。可以附加数据库,也可以在原来的数据库中继续新建。第六步,直接进行,并进行测试。点击测试数据源,会弹出测试成功的提示。至此建了一个与数据库SQL SERVER 2005之间ODBC连接。 二、在用powerdesigner逆向工程生成PDM时,列注释(ColumnComment)始终无法生成,历经数小时的探索,找到一个折衷的方法,现...
浅析C#打印和C#打印预览的实现
C#打印和C#打印预览的实现的三大部分:页面设置、打印预览、打印具体用到的类和属性事件都是什么内容呢?那么本文就向你介绍C#打印和C#打印预览的实现具体事宜。我们谈到C#打印和C#打印预览的实现其中主要就是包括:页面设置、打印预览、打印三大部分。打印的原理是:生成mdi文件,系统碰到mdi的时候会自动以打印的方式处理。所以,不管用什么模板,什么方式;能在PrintPage事件处理中,生成一张要打印内容的图片就OK了!主要的支持类都包括在命名空间System.Drawing.Printing中,在程序集System.Drawing.dl...
LINQ查询返回DataTable类型
在使用LINQ查询的时候,一般我们会返回List<T>或IList<T>类型,如下所示:例1: public List<TSample> GetList() { using (BPDataContext db = new BPDataContext(TCTC_ConnectionStrings.connStr)) ...
sql得到中文首字母
USE [JewelryRetailClientDB]GO/****** Object: UserDefinedFunction [dbo].[Func_GetPY] Script Date: 10/19/2011 14:21:59 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO-- =============================================-- Author: xoyozo-- Create date: 2010-4-17-- Description: 提供中文首字母-- =============================================CREATE FUNCTION [dbo].[Func_GetPY]( @str NVARCHAR(4000)) RETURNS NVARCHAR(4000)ASBEGINDECLARE @word NCHAR(1),@PY NV...
SQL生成流水号
--生成流水号--创建测试表create table test(id varchar(18), --流水号,日期(8位)+时间(4位)+流水号(4位)name varchar(10) --其他字段)go--创建生成流水号的触发器create trigger t_insert on testINSTEAD OF insertasdeclare @id varchar(18),@id1 int,@head varchar(12)select * into #tb from insertedset @head=convert(varchar,getdate(),112)+replace(convert(varchar(5),getdate(),108),':','')select @id=max(id) from test where id like @head+'%'if @id is nullset @id1=0elseset @id1=cast(substring...
SQL解析IP地址的几种方式
--方法一:DECLARE @STR VARCHAR(100)SET @STR='123.1231.112.12'SELECT LEFT(@STR,(LEN(@STR)-CHARINDEX('.',REVERSE(@STR))))+ '.*' --方法二: SELECT PARSENAME(@STR,1)
C#属性与索引器
using System;namespace PropertyIndexerApp{class Class1 { [STAThread] static void Main(string[] args) { //创建一个MyClass实例 MyClass m = new MyClass (); for (int i=0;i<10;i++) { for (int j=0;j<10;j++) { //写、读第一个索引器 m[i*10,j]=i*10+j; Console.Write("No{0}{1}:{2}",i,j,m[i*10,j]); } Console.WriteLine (); } for (int i=0;i<m.StrCount ;i++) { //读第二个索引器 Console.WriteLine (m[i]); }//Set实例属性 m.StrCount = 5; //Get实例属性 for (int i=0;i<m...