C#杂问

控件的输入法控制

控件的输入法控制 —Control. ImeMode 属性

获取或设置控件的输入法编辑器 (IME) 模式。

命名空间:    System.Windows.Forms

程序集:   System.Windows.Forms

 

IME 是一个程序,它使用户能够通过使用标准键盘输入复杂字符和符号,如日语汉字字符。对于仅用于输入数值的 TextBox 控件, ImeMode 属性通常设置为 ImeMode..::.Off 。对于 Form 类, ImeMode 属性值设置为 ImeMode..::.NoControl 。

 

不直接支持输入方法编辑器或允许从 IME 直接输入的大多数类将此属性的值设置为 NoControl 。

 

重要说明:

除非 ImeMode 已经以编程方式设置为 ImeMode..::.Disable ,否则用户能够以交互方式更改它。在前一种情况下,用户将无法使用 IME 。

 

C#的编码

NET 中内存中的字符串都是Unicode ,而asp.net 程序默认是 UTF-8 编码 ,我们在使用某些字符串时出现了乱码,我们首先要判断是不是我们解释用的编码方式出错了。

 

Unicode编码有多种编码方式,如UTF-8,UTF-16,gbk等

 

学习API的最佳方式

直接查看 NET 类的源码,在 vitual studio 下,有非常详细的接口说明。

 

 

NET framework 命名

以 I+ 表示接口 , 如 IDictionary , ICollection 。

 

 

访问容器的两种常见用法

IDictionary<string, string> treeMap = new SortedList<string, string>();

foreach(KeyValuePair<string, string> kvp in @params) {  //1 foreach

treeMap.Add(kvp.Key,kvp.Value);

}

 

System.Collections.IEnumerator iter = @treeMap.Keys.GetEnumerator();

while (iter.MoveNext())  //2 迭代器。初值位于集合中第一个元素之前

{

}

 

串化

String 只能操作 string 对象,当然可以用 ToString 来实现任意串化。 System.Text.StringBuilder 继承自 ISerializable ,提供更为强大的串化功能。

 

编码与解码

System.Text 的 Encoding 和 提供了常用的编解码功能。调用非常简单,示例:

Encoding.UTF8.GetBytes(str).  // 使用 UTF8 编码,并获取编码后的 Byte(8 位无符号字符 )

Encoding.Unicode. GetChars (str).  // 使用 Unicode 编码,并获取编码后的 Unicode 字符

Encoding.Unicode. GetString (str).  // 使用 Unicode 编码,并获取编码后的 Unicode 字符

 

XML 解析

XmlNode 中常有属性:

InnerText ---- 节点及其所有子节点的串联值

Value  ---- 节点的值

InnerXml ---- 该节点的子节点的标记

示例:

XmlDocument xd = new XmlDocument();

xd.LoadXml(xml);

 

XmlNodeList nodeList = xd.GetElementsByTagName("user");

foreach (XmlNode node in nodeList)

{

string user = node.SelectSingleNode("nick").InnerText;

string visit_time = node.SelectSingleNode("last_visit").InnerText;

}

 

XmlElement 继承自 XmlNode ,提供对节点属性值更便捷的访问接口。

示例:

XmlElement userNode = (XmlElement)doc.GetElementsByTagName("user")[0];

string uri = userNode.GetAttribute("uri");

urserId = userNode.GetAttribute("user-id");

 

string 和内置类型的互转

Int.ToString()  ->  int à string

Int.Parse()  -> string à int

 

C# 怎样给生成的可执行文件( .EXE )修改图标?

在解决方案中,点你的项目,有个属性,属性页里面有个“
应用程序图标“,
然后选择你想要的就可以了,在重新生成后,你就可以看到了 

 

C# 中打开网页

System.Diagnostics.Process.Start(“http://oil.spaces.live.com/ ”);

 

Frame 显示元素的控制

this.Controls.Clear();

this.Controls.Add(this.dataGridView1);

注:只有 add 到 controls 中的元素会被显示。

winform 如何固定大小

设置 FormBorderStyle 属性,

this.FormBorderStyle = system.Windows.Forms.FormBorderStyle.FixedSingle

 

 

中文输入

如果不能在控件属性中输入中文, 1) 确认已切换到中文输入; 2) 先尝试在源码文件中输入中文。

posted @ 2012-11-13 18:54  漫步云计算  阅读(214)  评论(0编辑  收藏  举报