随笔 - 77  文章 - 479 评论 - 78 trackbacks - 2
<2012年2月>
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910

搜索

 
 

最新随笔

我的标签

随笔分类

随笔档案(77)

文章分类(483)

最新评论

阅读排行榜

评论排行榜

推荐排行榜

WinForm
用RichTextBox进行无闪烁的着色
摘要: 很多时候,我们希望对用户输入的文字进行即时的分析,并对部分文字的字体颜色进行修改,让那些文字更加醒目。如果说要对部分的文字进行字体颜色的修改,我们很可能就会想到使用RichTextBox这个控件,因为这个控件至少能够让部分文字的字体颜色变得和其他部分不一样。然而实际上对于现实静态的东西,RichTextBox也许是适合的,但是对于想这种的“动态着色”则不见得有效率。最为头痛的一个问题就是,通过SelectionStart、SelectionLength的设置,然后再修改SelectionFont和SelectionColor,必然有一个短暂的时间会有文字被选中,结果就是你要加亮的文字会在一瞬间闪现蓝色背景的白色文字。这个现象并不一定每次都能够看到,但是如果在不停的进行输入的话,就一定会看到这个情况了。

这种不停的闪烁的情景比较让人感到讨厌,怎么解决呢?在没有试验之前,我想到了三种办法:
1、在进行着色的时候,让焦点从当前的RichTextBox上面转移到别的地方,同时HideSelection设置成Ture;
2、用一个后台RichTextBox进行着阅读全文
posted @ 2008-04-23 08:30 小角色 阅读(219) | 评论 (0)  编辑
WebBrowser控件应用:弹出新窗体和关闭窗口
摘要: 缘起:上次写了一个《WebBrowser控件的简单应用2》,提到了在NewWindow事件中打开新窗口的例子。有网友“队长 ”提出那个事件得到的参数是本页面的,而不是新页面的,经过测试,果然url参数不是新页面的。

Open新页面要处理的:

1:<>;
2: onclick=’window.open’ ;

3:引用js文件 ;

4:ClientScript.RegisterStartupScript();等。

5:还有要实现在打开的页面里能用window.opener对象

Close要处理的:

1:onclick=’window.close ;

2:引用js文件 ;

3:ClientScript.RegisterStartupScript()等。



经过在网上搜索,结果并不令人满意。基本上,WebBro
阅读全文
posted @ 2008-04-21 13:40 小角色 阅读(701) | 评论 (0)  编辑
C#线程学习
摘要: 任务:在一个主线程中同时开启三个线程,每个线程中执行相同的数据插入动作,只是数据不同。
数据库在得到插入的响应后,作相应的处理,如果为数值1,延时10秒,为2延时5,为3不延时.
目的:体验C#多线程处理
后台数据库的淮备:
1.建表
create table dd (id Tinyint )
2.建触发器
create trigger tg_dd_ins on dd for insert
as
begin
declare @v Tinyint
select @v=id from inserted
if @v=1
waitfor delay '00:00:10'
else if @v=2
waitfor delay '00:00:05'
end


3.C#中处理过程
Form1.CS

using System;
using System.Col阅读全文
posted @ 2008-04-19 14:29 小角色 阅读(432) | 评论 (0)  编辑
C#代码关闭Windows XP
摘要:

using System;
using System.Runtime.InteropServices;

class shoutdown{
[StructLayout(LayoutKind.Sequential, Pack=1)]
internal struct TokPriv1Luid
{
public int Count;
public long Luid;
public int Attr;
}

[DllImport("kernel32.dll", ExactSpelling=true) ]
internal static extern IntPtr GetCurrentProcess();
阅读全文

posted @ 2008-04-18 09:56 小角色 阅读(19) | 评论 (0)  编辑
用C#获取浏览文件夹对话框
摘要: 我们知道,C#里面有选择文件的对话框控件,却没有选择文件夹的对话框控件,不少人为了选择一个文件夹只好自己用TreeView类来处理,其实在C#里面完全不用那么麻烦,我们可以用C#的FolderNameEditor类的子类FolderBrowser类来实现获取浏览文件夹对话框的功能。

  下面来看看具体是怎么实现的。

  首先新建一个winform的项目,再新建一个类文件(File->AddNewItem->Class)。

  因为FolderNameEditor是在System.Windows.Forms.Design命名空间下的,此命名空间位于动态链接库system.design.dll,所以我们要先在解决方案中添加新的引用(reference)System.Design。然后在代码中添加


using System.Windows.Forms.Design;
接着,我们新建一个FolderDialog类,此类从FolderNameEditor类继承,在此类中新建一个FolderBrows阅读全文
posted @ 2008-04-16 13:35 小角色 阅读(156) | 评论 (0)  编辑