自动完成文本框控件






1.95/5 (15投票s)
2004年1月27日
2分钟阅读

102122

2464
一个文本框控件,可以自动完成用户输入的内容。它允许用户选择要记住的内容以进行自动完成。
引言
这是一个文本框控件,可以自动完成用户正在输入的内容。它使用用户可以创建的单词列表。它使用文本文件来存储列表。我以这种方式存储它,是为了让用户能够轻松地使用记事本编辑列表。
背景
我有一个用户需要输入经常相同但偶尔会更改的数据。该应用程序主要由文本框组成,用户希望保持这种方式,而不是在其中添加一些组合控件。有时他们希望能够向列表中添加一个项目,例如他们正在处理的新公司。
我本可以使用注册表或数据库来存储数据,但决定使用文本文件以便用户可以轻松地编辑它。
使用代码
只需通过浏览 DLL 将控件添加到工具箱。然后将控件拖放到您的窗体上。代码由一个类组成,即 senseControl2
,它继承自 TextBox
。我已向 TextBox
控件添加了一些属性。ChoiceFile
属性允许您命名一个用于存储选项的文件。您可以对多个控件使用相同的文件,并通过 ChoicesSaved
事件使它们保持同步。每当用户保存新项目时,都会引发 ChoicesSaved
事件。您可以在事件处理程序中使用类似以下的代码
private void senseControl_ChoicesSaved(object sender, System.EventArgs e)
{
if(sender == this.senseControl1)
this.senseControl2.ReloadChoices();
else
this.senseControl1.ReloadChoices();
}
您无需分配文件名,控件将默认使用控件名称和 .txt 后缀。此外,您可以使用 Choices
属性预设一些值。当用户第一次保存新项目时,这将创建一个包含这些项目的文本文件。