textBox仿百度、谷歌 下拉列表

jishengzu 2010-07-17 02:59:13
vs中自带功能,能否类似效果。
不行的话使用继承textBox类的话出现的问题是,当ToolStripDropDown show()时textBox的焦点被抢。

public class TextBoxDropDown : TextBox
{
ToolStripDropDown dropDown = null;
public TextBoxDropDown()
{
dropDown = new ToolStripDropDown();
dropDown.Width = 50;
dropDown.Items.Add("aa");
dropDown.Items.Add("aaa");
dropDown.Items.Add("aab");
this.TextChanged += new EventHandler(TextBoxDropDown_TextChanged);

}

void TextBoxDropDown_TextChanged(object sender, EventArgs e)
{
//if (sender != null)
ShowDropDown();
}

private void ShowDropDown()
{
//try
//{
if (this.dropDown != null)
{
this.dropDown.Show(this, 0, Height);

//this.FindForm().GetNextControl(this, true).Focus();
}
//}
//catch (Exception ee)
//{
// string ss = ee.Message;
//}
}
}
...全文
297 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jishengzu 2010-07-17
  • 打赏
  • 举报
回复
谢啦 结贴。
wuyq11 2010-07-17
  • 打赏
  • 举报
回复
AutoCompleteStringCollection AutoComp =;
txtbox1.AutoCompleteMode = AutoCompleteMode.Suggest;
txtbox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
AutoComp.Add("1");
AutoComp.Add("2");
AutoComp.Add("3");
txtbox1.AutoCompleteCustomSource = AutoComp;
可使用ajax控件如AutoComplete Extender
或在textbox
正下面隐藏一个listbox
flyerwing 2010-07-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zhangjing0914 的回复:]
可以用Ajax里的自动完成控件:AutoComplete控件实现
[/Quote]
呵呵,
zhangjing0914 2010-07-17
  • 打赏
  • 举报
回复
可以用Ajax里的自动完成控件:AutoComplete控件实现

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧