TextBox.AutoCompleteSource 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个值,该值指定用于自动完成的完整字符串的源。
public:
property System::Windows::Forms::AutoCompleteSource AutoCompleteSource { System::Windows::Forms::AutoCompleteSource get(); void set(System::Windows::Forms::AutoCompleteSource value); };
[System.ComponentModel.Browsable(true)]
[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.TextBoxAutoCompleteSourceConverter))]
public System.Windows.Forms.AutoCompleteSource AutoCompleteSource { get; set; }
[<System.ComponentModel.Browsable(true)>]
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.TextBoxAutoCompleteSourceConverter))>]
member this.AutoCompleteSource : System.Windows.Forms.AutoCompleteSource with get, set
Public Property AutoCompleteSource As AutoCompleteSource
属性值
AutoCompleteSource 值之一。 这些选项为 AllSystemSources
、AllUrl
、FileSystem
、HistoryList
、RecentlyUsedList
、CustomSource
和 None
。 默认值为 None
。
- 属性
例外
指定的值不是 AutoCompleteSource 值之一。
示例
下面的代码示例演示如何使用集合作为控件的自动完成自定义源 TextBox 。 此示例将执行下列操作:
AutoCompleteSource使用 属性使TextBox控件能够接受其自动完成行为的自定义源。
AutoCompleteCustomSource使用 属性设置值的自定义列表。
AutoCompleteMode使用 属性设置自动完成候选项的显示方式。
private void Form1_Load(object sender, EventArgs e)
{
// Create the list to use as the custom source.
var source = new AutoCompleteStringCollection();
source.AddRange(new string[]
{
"January",
"February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December"
});
// Create and initialize the text box.
var textBox = new TextBox
{
AutoCompleteCustomSource = source,
AutoCompleteMode =
AutoCompleteMode.SuggestAppend,
AutoCompleteSource =
AutoCompleteSource.CustomSource,
Location = new Point(20, 20),
Width = ClientRectangle.Width - 40,
Visible = true
};
// Add the text box to the form.
Controls.Add(textBox);
}
Private Sub Form1_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
' Create the list to use as the custom source.
Dim MySource As New AutoCompleteStringCollection()
MySource.AddRange(New String() _
{ _
"January", _
"February", _
"March", _
"April", _
"May", _
"June", _
"July", _
"August", _
"September", _
"October", _
"November", _
"December" _
})
' Create and initialize the text box.
Dim MyTextBox As New TextBox()
With MyTextBox
.AutoCompleteCustomSource = MySource
.AutoCompleteMode = AutoCompleteMode.SuggestAppend
.AutoCompleteSource = AutoCompleteSource.CustomSource
.Location = New Point(20, 20)
.Width = Me.ClientRectangle.Width - 40
.Visible = True
End With
' Add the text box to the form.
Me.Controls.Add(MyTextBox)
End Sub
注解
AutoCompleteCustomSource使用 、 AutoCompleteMode和 AutoCompleteSource 属性创建一个 TextBox ,通过将输入的前缀与维护源中所有字符串的前缀进行比较,自动完成输入字符串。 这对于经常输入 URL、地址、文件名或命令的控件很有用 TextBox 。
属性的使用 AutoCompleteCustomSource 是可选的,但必须将 属性设置为 AutoCompleteSourceCustomSource
才能使用 AutoCompleteCustomSource。
必须同时使用 AutoCompleteMode 和 AutoCompleteSource 属性。
注意
AutoCompleteSource 不适用于多行 TextBox 控件。
注意
操作系统可能会限制可以一次显示的自定义字符串数。