首页 > 解决方案 > 如何通过选择建议值来更改文本框值?

问题描述

我正在使用 C# 在 Visual Studio 中创建一个桌面应用程序。我有一个名为 Tag_Word_Box 的字符串数组。如果我在文本框中输入内容,则会显示来自 Tag_Word_Box 数组的建议词。

简而言之,假设-我分别有 5 个单词 [aabc] [abc] [abd] [abcg] [bcd] 如果我只在文本框中输入“a”,那么它将显示所有没有“bcd”的单词。如果我选择“aabc”或按输入建议单词之一,那么 - 它将在文本框中分配整个单词,这意味着文本框值将随着“a”选择单词而改变。

顺便说一句,我知道-它将通过特里算法来解决以找出单词。但是我想知道如何在 Visual Studio 方面对 C# 进行该操作-

1. 在我输入内容时显示提示词

2.如何通过从中选择来更改文本框的值?

谢谢 :)

标签: c#winforms

解决方案


所有文本框都有一个“AutoCompleteSource”属性。从“属性”工具栏中将其设置为 CustomSource。然后将“AutoCompleteMode”属性设置为 SuggestAppend。现在,在代码中,将其添加到文本框的 TextChanged 事件中:

    var autocomplete = new AutoCompleteStringCollection();
    autocomplete.AddRange(Tag_Word_Box);
    textBoxName.AutoCompleteCustomSource = autocomplete;

要在代码中完成完整的操作,请将其添加到文本框的 TextChanged 事件中:

    textBoxName.AutoCompleteSource=AutoCompleteSource.CustomSource;
    textBoxName.AutoCompleteMode=AutoCompleteMode.SuggestAppend;
    var autocomplete = new AutoCompleteStringCollection();
    autocomplete.AddRange(Tag_Word_Box);
    textBoxName.AutoCompleteCustomSource = autocomplete;

请记住在使用此代码之前将 textBoxName 替换为您的文本框的名称。


推荐阅读