一切福田,不離方寸,從心而覓,感無不通。

C# webBrowser强制在本窗口打开,禁止在新窗口打开的解决方案

有时需要用WebBrowser加载URL,来实现某些功能。而这时,我们就不希望所打开的页面中的链接,在新窗口中打开,因为这样的话,实际上是用系统默认的浏览器打开了,从而脱离了你的WebBrowser,也就不能被你所控制了。 要解决这个问题,可以使用下面的方法: 第一种解决该当推荐使用 [code=csharp]  private void webBrowser1_NewWindow(object sender, CancelEventArgs e) { string url = ((WebBrowser)sender).StatusText; webBrowser1.Navigate(url); e.Cancel = true; }[/code] StatusText就是要跳转到的Url e.Cancel = true;是取消新窗口打开, 第二种方法 假设WebBrowser的Name是 webBrowser1 简单方法-利用加载完成事件将所有的链接和form的target值改为"_seft": [code=csharp]private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { //将所有的链接的目标,指向本窗体 foreach (HtmlElement archor in this.webBrowser1.Document.Links) { archor.SetAttribute("target", "_self"); } //将所有的FORM的提交目标,指向本窗体 foreach (HtmlElement form in this.webBrowser1.Document.Forms) { form.SetAttribute("target", "_self"); } } 取消新窗口事件 ? private void webBrowser1_NewWindow(object sender, CancelEventArgs e) { e.Cancel = true; }[/code] 将 WebBrowser 的 AllowWebBrowserDrop 设为 false(禁止拖放) 将 WebBrowser 的 WebBrowserShortcutsEnabled 设为 false(禁止使用快捷键)将 WebBrowser 的 IsWebBrowserContextMenuEnabled 设为 false(禁止右键上下文菜单)   from:http://www.sufeinet.com/thread-2970-1-1.html

龙生   19 May 2016
View Details

c# Winform 开发分屏显示应用程序

分屏显示即可把一台主机内运行的多个程序分别显示在不同的两个(或多个)屏幕上。目前市面上主流的显卡都支持分屏显示(显示双屏幕),如果需要显示2个以上的屏幕,则应使用“拖机卡”类的硬件。   设置分屏显示的两种方法如下: 1、用两个显卡连接两台显示器,进入系统后,分清楚哪一个是主显卡,在桌面空白处右键单击,点属性,然后在窗口中点“设置”选项卡,会看到有两个显示,分别是1(主显卡)和2(副显卡),点击那个2,在下面的“将windows桌面扩展到该监视器”打上对号,确定后,你试着把鼠标往主显示器右边界移动,再移动,鼠标会跑到第二台显示器上去了,这样,同样运行几个程序,分别将它们的窗口拖拽到两个显示器的区域中就可以了,这实际上是将桌面扩展了一下。 2、使用专门的硬件。可以使用“一拖多”的拖机卡,只要将设备插入usb口中,将设备上引出的两个ps/2口分别接鼠标和键盘,主机中还是有两块显卡,然后再装上这个设备的专用软件,重启后,经过简单的配置,即可实现“完全”独立的两个系统。   所谓的分屏或多屏软件,就是把软件中的多个窗体,在主屏幕运行,但是把各个窗体(坐标)移动到各个扩展屏幕位置上如下图所示:   主屏幕 (MainForm) index=0 扩展屏幕1 (Form1) index=1 扩展屏幕2 (Form2) index=… 扩展屏幕3 (Form3) index=…     以下介绍最常用的双屏幕显示,也就是左右模式的屏幕显示的方法。 WinForm 的实现办法: 利用WinForm中的Screen类,即可比较方便地实现多窗体分别在多个屏幕上显示。   获取当前系统连接的屏幕数量: Screen.AllScreens.Count(); 获取当前屏幕的名称:string CurrentScreenName = Screen.FromControl(this).DeviceName; 获取当前屏幕对象:Screen CurrentScreen = Screen.FromControl(this); 获取当前鼠标所在的屏幕:Screen CurrentScreen = Screen.FromPoint(new Point(Cursor.Position.X, Cursor.Position.Y)); 让窗体在第2个屏幕上显示:      this.Left = ((Screen.AllScreens[1].Bounds.Width – this.Width) / 2); this.Top = ((Screen.AllScreens[1].Bounds.Height – this.Height) / 2); 把任何窗体显示在任何屏幕的方法: [csharp] view plaincopy //在窗体的OnLoad事件中调用该方法 protected void Form1_OnLoad(…) {     showOnMonitor(1);//index=1 } private void showOnMonitor(int showOnMonitor) {     Screen[] sc;     sc = Screen.AllScreens;     if (showOnMonitor >= sc.Length) {         showOnMonitor = 0;     }     this.StartPosition = FormStartPosition.Manual;     this.Location = new Point(sc[showOnMonitor].Bounds.Left, sc[showOnMonitor].Bounds.Top);     // If you intend the form to be maximized, change it to normal then maximized.     this.WindowState = FormWindowState.Normal;     this.WindowState = FormWindowState.Maximized; } 对WPF窗体来说,只要简单的更改即可: 首先要添加对 System.Windows.Forms 和 System.Drawing 的引用 简单的参考代码如下: [csharp] view plaincopy protected override void OnStartup(StartupEventArgs e)         {             base.OnStartup(e); […]

龙生   18 May 2016
View Details

artDialog文档

artDialog —— 经典的网页对话框组件,内外皆用心雕琢。 支持普通与 12 方向气泡状对话框 完善的焦点处理,自动焦点附加与回退 支持 ARIA 标准 面向未来:基于 HTML5 Dialog 的 API 支持标准与模态对话框 丰富且友好的编程接口 能自适应内容尺寸 仅 4kb (gzip) 文档导航 引入 artDialog 快速参考 普通对话框 模态对话框 气泡浮层 添加按钮 控制对话框关闭 给对话框左下脚添加复选框 阻止对话框关闭 不显示关闭按钮 创建 iframe 内容 方法 show([anchor]) showModal([anchor]) close([result]) remove() content(html) title(text) width(value) height(value) reset() button(args) focus() blur() addEventListener(type, callback) removeEventListener(type, callback) dialog.get(id) dialog.getCurrent() 选项 内容 title content statusbar 按钮 ok okValue cancel cancelValue cancelDisplay button 外观 width height skin padding 交互 fixed align quickClose autofocus zIndex 事件 onshow onbeforeremove onremove onclose onfocus onblur onreset 高级 id […]

龙生   12 May 2016
View Details

攻击者开始利用 ImageMagick 漏洞攻击网站

安全研究人员称,攻击者没有浪费一点时间,开始利用刚刚曝出的ImageMagick高危漏洞去执行恶意代码以控制网站的Web服务器。ImageMagick是一个广泛使用的图像处理库,它的一个高危漏洞允许远程代码执行,攻击者上传植入恶意代码的图像,Web服务器在处理时能被利用执行攻击者选择的代码。开发者尚未释出修正漏洞的补丁。CloudFlare的研究员 John Graham-Cumming在官方博客上称,攻击者正在利用该漏洞攻击网站。   from:http://www.oschina.net/news/73296/inside-imagetragick-the-real-payloads-used-to-hack-websites

龙生   11 May 2016
View Details

818某宝上宣称孕妇可用、儿童专用的各种不靠谱澳洲产品

楼主和女朋友在墨尔本读书,家里很多亲戚朋友让我们买东西寄回去,所以有了这个机会接触各种澳洲老人、婴幼儿和女性的产品,包括奶粉、保健品和化妆品。 经常有朋友跟我要孕妇可用的什么什么和儿童专用的什么什么,我从未听说过。上网一看某宝吹嘘的多么多么好,事实上去药店问了药剂师却跟我们再三嘱咐不能给孕妇、儿童使用。真的是心惊胆战。 接下来就818最近的各种见闻。 1、痔疮膏 Proctosedyl 首当其冲的就是这款痔疮膏,我本人用过,的确疗效非凡。但是有孕妇亲戚跟我们要这一款说某宝宣称孕妇可用。如图: 真的是这样嘛? 我找来手头这一支给你们分析一下。 里面含有的氢化可的松是激素类药物,盐酸辛可卡因是麻醉剂。激素当然见效快,麻醉剂当然舒服。 正常人用剂量很小并没有关系,但是孕妇呢? 百度百科一下也会发现,最轻的说法是“孕妇避免大面积长期使用”,而在氢化可的松的百科词条下,禁忌症里包含了孕妇。 吓人的话就不多说了,已经用的赶紧停了吧。 我在药店问的每一个澳洲药剂师都明确告诉我,不建议孕妇使用。也不知道这些广告词是从何而来呢?孕妇一定要谨慎再谨慎,凡事多去问医生。某宝上真假都难辨,广告词也不能尽信啊。   from:http://bbs.tianya.cn/post-funinfo-6357320-1.shtml

龙生   09 May 2016
View Details

字体图标 Font Face

设计师做的高保真原型图,难免会用到艺术字体。 采用切片的方式,简单,粗暴,节省时间。除了retina屏其它兼容性也是一流。但是在修改的时候,会花很大的力气。即使只是修改文字大小,也需要重新切图,更别说修改文字,或者改变文字颜色了。 有没有想过,文字本来就应该是它原本的样子。只是看起来像,似乎不和情理。 之所以不直接使用艺术字体,最大的一个问题就是字体文件,一般都太大了。轻轻松松就上兆的节奏。在网页这种流量寸土寸金的地方,真的是很难应用起来。 我们在一个网页上一般用到的艺术字体的地方,往往只有banner和大标题。其实真的算下来也没有几个字。如果我们能把用到的字单独存在一起,组成一个字体文件,这不就解决了字体文件太大的问题了吗? 准备字体形状 将文字,分解成一个字一个图层。 选中所有图层,右键转换为形状。 选中所有图层,右键导出为… 导出svg图片 修改每一个图层的文件设置为svg。 导出 登录网站 登录https://icomoon.io, 选择右上角icoMoon App 或者直接登录https://icomoon.io/app/#/select 导入图片 点击import Icons导入所有svg文字 选中你要打包的文字 点击右下角Generate Font 修改文字 修改文字映射 点击download 导出代码 打开style.css文件 拷贝@font-face代码 拷贝fonts文件夹 修改相关路径,修改字体名称 只需要在使用的时候设定font-family为我们制定的字体名称就可以了 from:http://www.cnblogs.com/css27/p/5473766.html

龙生   09 May 2016
View Details

LINQ体验(8)——LINQ to SQL语句之Union All/Union/Intersect和Top/Bottom和Paging和SqlMethods

我们继续讲解LINQ to SQL语句,这篇我们来讨论Union All/Union/Intersect操作和Top/Bottom操作和Paging操作和SqlMethods操作 。 Union All/Union/Intersect操作 适用场景:对两个集合的处理,例如追加、合并、取相同项、相交项等等。 Concat(连接) 说明:连接不同的集合,不会自动过滤相同项;延迟。 1.简单形式:

语句描述:返回所有消费者和雇员的电话和传真。 2.复合形式:

语句描述:返回所有消费者和雇员的姓名和电话。 Union(合并) 说明:连接不同的集合,自动过滤相同项;延迟。即是将两个集合进行合并操作,过滤相同的项。

语句描述:查询顾客和职员所在的国家。 Intersect(相交) 说明:取相交项;延迟。即是获取不同集合的相同项(交集)。即先遍历第一个集合,找出所有唯一的元素,然后遍历第二个集合,并将每个元素与前面找出的元素作对比,返回所有在两个集合内都出现的元素。

语句描述:查询顾客和职员同在的国家。 Except(与非) 说明:排除相交项;延迟。即是从某集合中删除与另一个集合中相同的项。先遍历第一个集合,找出所有唯一的元素,然后再遍历第二个集合,返回第二个集合中所有未出现在前面所得元素集合中的元素。

语句描述:查询顾客和职员不同的国家。 Top/Bottom操作 适用场景:适量的取出自己想要的数据,不是全部取出,这样性能有所加强。 Take 说明:获取集合的前n个元素;延迟。即只返回限定数量的结果集。

语句描述:选择所雇用的前5个雇员。 Skip 说明:跳过集合的前n个元素;延迟。即我们跳过给定的数目返回后面的结果集。

语句描述:选择10种最贵产品之外的所有产品。 TakeWhile 说明:直到某一条件成立就停止获取;延迟。即用其条件去依次判断源序列中的元素,返回符合判断条件的元素,该判断操作将在返回false或源序列的末尾结束 。 SkipWhile 说明:直到某一条件成立就停止跳过;延迟。即用其条件去判断源序列中的元素并且跳过第一个符合判断条件的元素,一旦判断返回false,接下来将不再进行判断并返回剩下的所有元素。 Paging(分页)操作 适用场景:结合Skip和Take就可实现对数据分页操作。 1.索引

语句描述:使用Skip和Take运算符进行分页,跳过前50条记录,然后返回接下来10条记录,因此提供显示Products表第6页的数据。 2.按唯一键排序

语句描述:使用Where子句和Take运算符进行分页,首先筛选得到仅50 (第5页最后一个ProductID)以上的ProductID,然后按ProductID排序,最后取前10个结果,因此提供Products表第6页的数据。请注意,此方法仅适用于按唯一键排序的情况。 SqlMethods操作 在LINQ to SQL语句中,为我们提供了SqlMethods操作,进一步为我们提供了方便,例如Like方法用于自定义通配表达式,Equals用于相比较是否相等。 Like 自定义的通配表达式。%表示零长度或任意长度的字符串;_表示一个字符;[]表示在某范围区间的一个字符;[^]表示不在某范围区间的一个字符。比如查询消费者ID以“C”开头的消费者。

比如查询消费者ID没有“AXOXT”形式的消费者:

DateDiffDay 说明:在两个变量之间比较。分别有:DateDiffDay、DateDiffHour、DateDiffMillisecond、DateDiffMinute、DateDiffMonth、DateDiffSecond、DateDiffYear

语句描述:查询在创建订单后的 10 天内已发货的所有订单。 已编译查询操作(Compiled Query) 说明:在之前我们没有好的方法对写出的SQL语句进行编辑重新查询,现在我们可以这样做,看下面一个例子:

语句描述:这个例子创建一个已编译查询,然后使用它检索输入城市的客户。 本系列链接:LINQ体验系列文章导航 LINQ推荐资源 LINQ专题:http://kb.cnblogs.com/zt/linq/ 关于LINQ方方面面的入门、进阶、深入的文章。 LINQ小组:http://space.cnblogs.com/group/linq/ 学习中遇到什么问题或者疑问提问的好地方。 from:http://www.cnblogs.com/lyj/archive/2008/01/27/1054995.html

龙生   09 May 2016
View Details

LINQ体验(7)——LINQ to SQL语句之Group By/Having和Exists/In/Any/All/Contains

我们继续讲解LINQ to SQL语句,这篇我们来讨论Group By/Having操作符和Exists/In/Any/All/Contains操作符。 Group By/Having操作符 适用场景:分组数据,为我们查找数据缩小范围。 说明:分配并返回对传入参数进行分组操作后的可枚举对象。分组;延迟 1.简单形式:

语句描述:使用Group By按CategoryID划分产品。 说明:from p in db.Products 表示从表中将产品对象取出来。group p by p.CategoryID into g表示对p按CategoryID字段归类。其结果命名为g,一旦重新命名,p的作用域就结束了,所以,最后select时,只能select g。当然,也不必重新命名可以这样写:

我们用示意图表示: 如果想遍历某类别中所有记录,这样:

2.Select匿名类:

说明:在这句LINQ语句中,有2个property:CategoryID和g。这个匿名类,其实质是对返回结果集重新进行了包装。把g的property封装成一个完整的分组。如下图所示: 如果想遍历某匿名类中所有记录,要这么做:

3.最大值

语句描述:使用Group By和Max查找每个CategoryID的最高单价。 说明:先按CategoryID归类,判断各个分类产品中单价最大的Products。取出CategoryID值,并把UnitPrice值赋给MaxPrice。 4.最小值

语句描述:使用Group By和Min查找每个CategoryID的最低单价。 说明:先按CategoryID归类,判断各个分类产品中单价最小的Products。取出CategoryID值,并把UnitPrice值赋给MinPrice。 5.平均值

语句描述:使用Group By和Average得到每个CategoryID的平均单价。 说明:先按CategoryID归类,取出CategoryID值和各个分类产品中单价的平均值。 6.求和

语句描述:使用Group By和Sum得到每个CategoryID 的单价总计。 说明:先按CategoryID归类,取出CategoryID值和各个分类产品中单价的总和。 7.计数

语句描述:使用Group By和Count得到每个CategoryID中产品的数量。 说明:先按CategoryID归类,取出CategoryID值和各个分类产品的数量。 8.带条件计数

语句描述:使用Group By和Count得到每个CategoryID中断货产品的数量。 说明:先按CategoryID归类,取出CategoryID值和各个分类产品的断货数量。 Count函数里,使用了Lambda表达式,Lambda表达式中的p,代表这个组里的一个元素或对象,即某一个产品。 9.Where限制

语句描述:根据产品的―ID分组,查询产品数量大于10的ID和产品数量。这个示例在Group By子句后使用Where子句查找所有至少有10种产品的类别。 说明:在翻译成SQL语句时,在最外层嵌套了Where条件。 10.多列(Multiple Columns)

语句描述:使用Group By按CategoryID和SupplierID将产品分组。 说明: 既按产品的分类,又按供应商分类。在by后面,new出来一个匿名类。这里,Key其实质是一个类的对象,Key包含两个Property:CategoryID、SupplierID。用g.Key.CategoryID可以遍历CategoryID的值。 11.表达式(Expression)

语句描述:使用Group By返回两个产品序列。第一个序列包含单价大于10的产品。第二个序列包含单价小于或等于10的产品。 说明:按产品单价是否大于10分类。其结果分为两类,大于的是一类,小于及等于为另一类。 Exists/In/Any/All/Contains操作符 适用场景:用于判断集合中元素,进一步缩小范围。 Any 说明:用于判断集合中是否有元素满足某一条件;不延迟。(若条件为空,则集合只要不为空就返回True,否则为False)。有2种形式,分别为简单形式和带条件形式。 1.简单形式: 仅返回没有订单的客户:

[…]

龙生   09 May 2016
View Details

KindEditor 4.x documentation

编辑器初始化参数 Contents 编辑器初始化参数 width height minWidth minHeight items noDisableItems filterMode htmlTags wellFormatMode resizeType themeType langType designMode fullscreenMode basePath themesPath pluginsPath langPath minChangeSize urlType newlineTag pasteType dialogAlignType shadowMode zIndex useContextmenu syncType indentChar cssPath cssData bodyClass colorTable afterCreate afterChange afterTab afterFocus afterBlur afterUpload uploadJson fileManagerJson allowPreviewEmoticons allowImageUpload allowFlashUpload allowMediaUpload allowFileUpload allowFileManager fontSizeTable imageTabIndex formatUploadUrl fullscreenShortcut extraFileUploadParams filePostName fillDescAfterUploadImage afterSelectFile pagebreakHtml allowImageRemote autoHeightMode fixToolBar   width 编辑器的宽度,可以设置px或%,比textarea输入框样式表宽度优先度高。 数据类型: String 默认值: textarea输入框的宽度 示例:

  height 编辑器的高度,只能设置px,比textarea输入框样式表高度优先度高。 数据类型: String 默认值: textarea输入框的高度   minWidth 指定编辑器最小宽度,单位为px。 数据类型: Int 默认值: 650   minHeight 指定编辑器最小高度,单位为px。 数据类型: […]

龙生   04 May 2016
View Details

郑州市机动车“黄绿标”核发地点

序号 检测机构名称 检测站地址 咨询电话 1 郑州市公安局机动车辆检测中心 南三环与郑平路交叉口向南2公里(贾砦) 68903827 2 郑州世贸机动车综合性能检测服务有限公司 新郑市龙湖镇老107国道小刘桥北 88887381 3 郑州市一零七机动车检测有限公司 107辅道与金桥路交叉口向北200米路东 65671899 4 河南昱晨交通安全设施有限公司 中牟县白沙镇前程村 62360121 5 郑州成功汽车检测有限公司 花园路与贾鲁河交叉口向西1000米路南 86559679 6 郑州市大正机动车安全检测有限公司 天河路与绿源路叉口向西200米路南 86541953 7 郑州成名汽车检测有限公司 中州大道向北至花园口立交沿北四环向东4公里路南 66962888 8 郑州市道路交通安全协会 紫荆山路与顺河路交叉口向南50米路东 53755800 9 郑州市祥通机动车检测站 中原路与商隐路交叉口向北300路东 85096376 10 郑州旭日机动车检测有限公司 郑州市中原西路与西三环交叉口向东50米路南 67670781 11 郑州大承汽车检测有限公司 郑州市高新技术开发区科学大道与雪松路交叉口西北角 86538111 12 郑州浩磊机动车检测有限公司 郑州市二七区侯寨麦秸垛沟村李嘴 68901007 13 郑州秦岭机动车检测服务有限公司 郑州高新区秦岭北路北彩虹桥南 86508979 14 郑州天荣机动车检测有限公司 郑州市金水区花园北路111号天荣汽配城东门 65989388 15 郑州金超机动车检测有限公司 郑州市惠济区大河路北、彭师路东 63799123 16 郑州市天行车辆检测技术有限公司 郑州市惠济区惠民路6号 86258588 17 郑州顺腾汽车安检有限公司 郑州高新区云杉路2号 86580311 18 郑州盛通机动车检测有限公司 金水区农业路朱屯东路交叉口向北200米 55919767 19 郑州永信机动车安全检测有限公司 郑州市管城回族区南曹乡苏庄村二十里铺自然村以北、郑新公路(S102省道)以西 69115789 20 郑州圣迪机动车检测有限公司 郑州市中原区三十里铺红石坡村1号 86632833 21 郑州嘉伟机动车有限公司 南三环与二十二大街交叉口向东1公里路北 55030777 […]

龙生   02 May 2016
View Details