Предиктивный текст в Richtextbox в VB
Я почти закончил работу с моим текстовым редактором в Visual Basic. И последнее, что я хочу добавить в свой проект, это подпрограмма, которая будет отображать раскрывающееся меню каждый раз, когда пользователь добавляет букву (символ) в поле richtextbox. Например, когда пользователь вводит a в поле richtextbox, программа отобразит раскрывающееся меню со всеми словами, первая буква которых - это. Затем, если пользователь введет b после a, в раскрывающемся меню будут все слова, первые два из которых буквы - ab.. Выпадающее меню будет получать слова из текстового файла по этому пути: C: /Desktop/txtfile.txt
1 ответ
Вы можете использовать свойство TextBox.AutoCompleteMode, чтобы предложить или добавить предиктивный текст в текстовом поле или в расширенном текстовом поле.
http://net-informations.com/q/faq/img/autocomplete.png
Следующая программа VB.Net добавляет некоторые строковые значения в AutoCompleteStringCollection и отображается как Autocomplete TextBox при вводе текста:
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
TextBox1.AutoCompleteMode = AutoCompleteMode.Suggest
TextBox1.AutoCompleteSource = AutoCompleteSource.CustomSource
' You can read the custom source file
' for example: File.ReadAllLine("C://Desktop//txtfile.txt")
Dim DataCollection As New AutoCompleteStringCollection()
addItems(DataCollection)
TextBox1.AutoCompleteCustomSource = DataCollection
End Sub
Public Sub addItems(ByVal col As AutoCompleteStringCollection)
col.Add("Abel")
col.Add("Bing")
col.Add("Catherine")
col.Add("Varghese")
col.Add("John")
col.Add("Kerry")
End Sub
End Class