在c#编程中,某些情况下我们可能还会用到.INI文件。例如为一个输入界面创建“动态帮助”:
我们在输入界面下方设置一个标签,当用户将光标移动到每一个TextBox或其他输入,选择框时,标签文字自动变换为该输入项的一些帮助信息。
INI文件是文本文件,由若干节(section)组成,在每个带括号的标题下面,是若干个关键词(key)及其对应的值(Value)
[Section]
Key=Value
我们的INI文件比较简单,文件名为:HelpInfo.ini。
-----------------
[PromptInfo]
YourTextBox = 请输入XXXXX信息。
-----------------
首先我们要用以下语句调用kernel32.dll
[DllImport ("kernel32")]
private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);
然后为输入项(如一个TextBox)的Enter事件编写一个回调方法
this.YourTextBox.Enter += new System.EventHandler(this.conEnter);
private void conEnter(Object sender, System.EventArgs e)
{
string strPromptFile = Directory.GetCurrentDirectory() + "\\HelpInfo.ini";//获取INI文件所在的路径
string strClsName = sender.GetType().ToString().ToUpper();
if( strClsName.EndsWith("TEXTBOX") )
{
if(sender.Equals(YourTextBox))
{
GetPrivateProfileString("PromptInfo", "YourTextBox" ,"",strPromptContent,
1024, strPromptFile);
}
txtHelpContent.Text = strPromptContent.ToString();//txtHelpContent就是显示帮助信息的标签
}