我有一个页面,我需要允许用户添加多个这样的选项
文本框(在此处输入并单击添加)
列表框(添加到列表框)
ajaxcontrol 工具包有这样的控制吗?
请建议
如果您希望在单击添加时将列表项添加到列表框中,那么列表框肯定可以做到这一点。你只需要调用 listBox.Items.Add(yourItem)
如果您在一个控件中寻找所有这些,不,它没有那种控件。但是制作一个用户控件或自定义控件应该是相当容易的。
在 textchange 事件或添加按钮单击时,创建一个新的 ListItem 并将其添加到项目列表中。
有两种方法可以将项目添加到 aListBox
或任何实现 aDataSource
和ItemCollection
的 Web 控件。
private List<KeyValuePair<string, string>> Items { get; set; }
protected AddItem(string text, string value)
{
this.Items.Add(new KeyValuePair<string, string>(value, text))
this.ListBox.ValueTextField = "Key";
this.ListBox.DataTextField = "Value";
this.ListBox.DataSource = this.Items;
this.ListBox.DataBind;
}
值得注意的是,在选项 1 中,我使用了 aList<KeyValuePair<string, string>>
而不是 a Dictionary<string, string>
,因为列表框可以包含具有重复值的项目。
protected AddItem(string text, string value)
{
var listItem = new ListItem(text, value);
this.ListBox.Items.Add(listItem);
}