我对AutoCompleteTextBox的理解


此程序使用Window应用程序设计的,此程序是作者自己建立的textbox

他建立了AutoCompleteTextboxCoolTextBox,用它来完成

首先我先对用户输入时出现的下拉框和匹配文字的关键字进行说明:

此程序完成匹配关键字的代码如下:

// Add some sample auto complete entry items...

this.coolTextBox1.Items.Add(new AutoCompleteEntry("Phoenix, Az""Phoenix, Az""Az""PHX"));

this.coolTextBox1.Items.Add(new AutoCompleteEntry("Tempe, Az""Tempe, Az""Az""TPE"));

this.coolTextBox1.Items.Add(new AutoCompleteEntry("Chandler, Az""Chandler, Az""Az""CHA"));

this.coolTextBox1.Items.Add(new AutoCompleteEntry("Boxford, Ma""Boxford, Ma""Ma""BXF"));

this.coolTextBox1.Items.Add(new AutoCompleteEntry("Topsfield, Ma""Topsfield, Ma""Ma""TPF"));

this.coolTextBox1.Items.Add(new AutoCompleteEntry("Danvers, Ma""Danvers, Ma""Ma""DNV"));

当你输入会出现下拉框,其中下拉框会出现蓝色的,此蓝色文字就是你所匹配的文字。

下面我对当你输入一个是什么么不出现匹配的关键字做说明:

此程序控制关键字的代码如下:

public class TextLengthTrigger : AutoCompleteTrigger

{

private int textLength = 2;

public int TextLength

{

get

{

return this.textLength;

}

set

{

this.textLength = value;

}

}

public TextLengthTrigger()

{

}

public TextLengthTrigger(int length)

{

this.textLength = length;

}

public override TriggerState OnTextChanged(string text)

{

if (text.Length >= this.TextLength)

return TriggerState.Show;

else if (text.Length < this.TextLength)

return TriggerState.Hide;

return TriggerState.None;

}

}

}

当你把上面的private int textLength = 2;改掉,它也不会出现一个关键字,原因是在作者改掉,是此程序出现的debug。其代码如下:

this.triggers.Add(new TextLengthTrigger(2));当你改掉这里时他就好了。

我就研究的这;

下面的研究和理解会在下面的时候呈现出来。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值