c# - 闪烁的文本框
问题描述
出于某种原因,如果我要更改文本框的AutoCompleteCustomSource
属性,它会消失一秒钟然后出现。我试图在另一个线程中做到这一点,但它似乎没有帮助,有什么想法吗?
无外螺纹代码:
private void nickName_TextChanged(object sender, EventArgs e)
{
//Thread updateAC = new Thread(updateAutoComplete);
//updateAC.Start();
AutoCompleteStringCollection collection = new AutoCompleteStringCollection();
collection.AddRange(db.getUsersByLetters(nickName.Text).ToArray());
nickName.AutoCompleteCustomSource = collection;
((mainForm)Parent).currentNick = nickName.Text;
error.Visible = false;
}
带外螺纹的代码:
private void nickName_TextChanged(object sender, EventArgs e)
{
Thread updateAC = new Thread(updateAutoComplete);
updateAC.Start();
((mainForm)Parent).currentNick = nickName.Text;
error.Visible = false;
}
public delegate void InvokeDelegate();
private void updateAutoComplete()
{
AutoCompleteStringCollection collection = new AutoCompleteStringCollection();
collection.AddRange(db.getUsersByLetters(nickName.Text).ToArray());
nickName.Invoke(new InvokeDelegate(() => { nickName.AutoCompleteCustomSource = collection;}));
}
解决方案
推荐阅读
- node.js - Bot Framework v4 Node.js 位置
- vue.js - vue 和 globla axios 请求
- c# - 一次只允许执行一次方法
- javascript - 当屏幕具有特定尺寸时选择属性
- c++ - 为什么编译器不能输入if语句?
- powershell - Powershell:使用循环将证书转换为 pfx
- ruby-on-rails - Rails bundler 在 OSX Catalina 中找不到正确的 Ruby 版本
- swift - 无法推断通用参数“父级”
- svelte - 更新数组中对象的正确方法是什么?
- asp.net - IIS web.config Active Directory Windows 身份验证使用角色适用于 AD 用户,但不适用于 AD 组或本地组