一个关于LISTBOX很简单的问题!50分笑纳!!!

modelbaby5 2008-07-14 02:54:42
两个LISTBOX,其中一个绑定数据,另一个无数据
两个按扭添加和删除
实现:当点有数据中的一项再点添加按扭时能把此项加入到另一个LISTBOX。删除也就是移除功能。
注:在WEB页面中实现,当点的是重复数据时不能重复添加到另一个LISTBOX。
哪位朋友帮忙写个小例子。小弟先谢谢了!
...全文
108 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
GhostAdai 2008-07-22
  • 打赏
  • 举报
回复
老衲笑衲了。
viki117 2008-07-14
  • 打赏
  • 举报
回复
AJAX或者用DATASOUROS。。
yhy0611 2008-07-14
  • 打赏
  • 举报
回复

protected void btnLeft_ServerClick(object sender, EventArgs e)
{
if (this.lstDept.SelectedIndex == -1)
{
return;
}
int index = this.lstDept.SelectedIndex;
this.lstManager.Items.Add(new ListItem(this.lstDept.SelectedItem.Text, this.lstDept.SelectedItem.Value));
this.lstDept.Items.RemoveAt(index);
if (index != 0 && index < this.lstDept.Items.Count)
{
this.lstDept.SelectedIndex = index;
}
else if (index != 0 && index == this.lstDept.Items.Count)
{
this.lstDept.SelectedIndex = index - 1;
}
else if (index == 0 && this.lstDept.Items.Count > 0)
{
this.lstDept.SelectedIndex = 0;
}
this.lstManager.SelectedIndex = this.lstManager.Items.Count - 1;
btnDisabledCheng();
}
protected void btnRight_ServerClick(object sender, EventArgs e)
{
if (this.lstManager.SelectedIndex == -1)
{
return;
}
int index = this.lstManager.SelectedIndex;
this.lstDept.Items.Add(new ListItem(this.lstManager.SelectedItem.Text, this.lstManager.SelectedItem.Value));
this.lstManager.Items.RemoveAt(index);
if (index != 0 && index < this.lstManager.Items.Count)
{
this.lstManager.SelectedIndex = index;
}
else if (index != 0 && index == this.lstManager.Items.Count)
{
this.lstManager.SelectedIndex = index - 1;
}
else if (index == 0 && this.lstManager.Items.Count > 0)
{
this.lstManager.SelectedIndex = 0;
}
this.lstDept.SelectedIndex = this.lstDept.Items.Count - 1;
btnDisabledCheng();
}
protected void btnLefts_ServerClick(object sender, EventArgs e)
{
if (this.lstDept.Items.Count == 0)
return;
for (int i = this.lstDept.Items.Count - 1; i >= 0; i--)
{
this.lstManager.Items.Add(new ListItem(this.lstDept.Items[i].Text, this.lstDept.Items[i].Value));
}
this.lstManager.SelectedIndex = this.lstManager.Items.Count - 1;
this.lstDept.Items.Clear();
btnDisabledCheng();
}
protected void btnRights_ServerClick(object sender, EventArgs e)
{
if (this.lstManager.Items.Count == 0)
return;
for (int i = this.lstManager.Items.Count - 1; i >= 0; i--)
{
this.lstDept.Items.Add(new ListItem(this.lstManager.Items[i].Text, this.lstManager.Items[i].Value));
}
this.lstDept.SelectedIndex = this.lstDept.Items.Count - 1;
this.lstManager.Items.Clear();
btnDisabledCheng();
}
namhyuk 2008-07-14
  • 打赏
  • 举报
回复
建议放到UpdatePanel里。
lion533335 2008-07-14
  • 打赏
  • 举报
回复
ICollection CreateDataSource()
{
DataTable dt = new DataTable();

dt.Columns.Add(new DataColumn("ID", typeof(int)));
dt.Columns.Add(new DataColumn("Name", typeof(string)));
for (int i = 0; i < 6; i++)
{
DataRow dr = dt.NewRow();
dr[0] = i;
dr[1] = "姓名" + i.ToString();
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
return dv;
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
sourceListBox.DataTextField = "Name";
sourceListBox.DataSource = CreateDataSource();
sourceListBox.DataBind();
}
}
//添加到另一个ListBox
protected void Button1_Click(object sender, EventArgs e)
{
ListItem sourceItem = sourceListBox.SelectedItem;
bool isExist = false;
foreach (ListItem item in destListBox.Items)
if (item.Text == sourceItem.Text)
isExist=true;
if (!isExist)
destListBox.Items.Add(sourceItem);
}
//删除
protected void Button2_Click(object sender, EventArgs e)
{
destListBox.Items.Remove(destListBox.SelectedItem);
}

110,896

社区成员

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

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

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