两个ListBox的相互操作
生活随笔
收集整理的這篇文章主要介紹了
两个ListBox的相互操作
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
兩個ListBox的相互操作有四個按:全選,單選,反單選,反全選.
一.一種情況是這四個按鈕用服務(wù)器控件:
????/**////?<summary>
????///?選中全部
????///?</summary>
????///?<param?name="sender"></param>
????///?<param?name="e"></param>
????protected?void?btnSelectAll_ServerClick(object?sender,?EventArgs?e)
????{
????????for?(int?i?=?0;?i?<?lb_Sourse.Items.Count;?i++)
????????{
????????????lb_NewName.Items.Add(new?ListItem(lb_Sourse.Items[i].Text,?lb_Sourse.Items[i].Value));
????????}
????????while(lb_Sourse.Items.Count?>?0)
????????{
???????????lb_Sourse.Items.Remove(lb_Sourse.Items[0]);
????????}
????}
????/**////?<summary>
????///?選中一個
????///?</summary>
????///?<param?name="sender"></param>
????///?<param?name="e"></param>
????protected?void?btnSelectOne_ServerClick(object?sender,?EventArgs?e)
????{
????????if?(lb_Sourse.SelectedIndex?!=?-1)
????????{
????????????string?StrPersonFlow?=?"";
????????????for?(int?i?=?this.lb_Sourse.Items.Count;?i?>?0;?i--)
????????????{
????????????????if?(this.lb_Sourse.Items[i?-?1].Selected)
????????????????{
????????????????????StrPersonFlow?+=?this.lb_Sourse.Items[i?-?1].Value?+?",";
????????????????????this.lb_NewName.Items.Add(this.lb_Sourse.Items[i?-?1]);
????????????????????this.lb_Sourse.Items.Remove(this.lb_Sourse.Items[i?-?1]);
????????????????}
????????????}
????????}
????????else
????????{
????????????Msg.Text?=?"請選中人員!";
????????}
????}
????/**////?<summary>
????/// 刪除單個
????///?</summary>
????///?<param?name="sender"></param>
????///?<param?name="e"></param>
????protected?void?btnDelOne_ServerClick(object?sender,?EventArgs?e)
????{
????????if?(lb_NewName.SelectedIndex?!=?-1)
????????{
????????????string?StrPersonFlow?=?"";
????????????for?(int?i?=?this.lb_NewName.Items.Count;?i?>?0;?i--)
????????????{
????????????????if?(this.lb_NewName.Items[i?-?1].Selected)
????????????????{
????????????????????this.lb_Sourse.Items.Add(this.lb_NewName.Items[i?-?1]);
????????????????????this.lb_NewName.Items.Remove(this.lb_NewName.Items[i?-?1]);
????????????????????StrPersonFlow?=?this.lb_NewName.Items[i?-?1].Value?+?",";
????????????????}
????????????}
????????}
????????else
????????{
????????????Msg.Text?=?"請選中人員!";
????????}
?
????}
????/**////?<summary>
????///?刪除全部
????///?</summary>
????///?<param?name="sender"></param>
????///?<param?name="e"></param>
????protected?void?btnDelAll_ServerClick(object?sender,?EventArgs?e)
????{
????????for?(int?i?=?0;?i?<?lb_NewName.Items.Count;?i++)
????????{
????????????lb_Sourse.Items.Add(new?ListItem(lb_NewName.Items[i].Text,?lb_NewName.Items[i].Value));
????????}
????????while?(lb_NewName.Items.Count?>?0)
????????{
????????????lb_NewName.Items.Remove(lb_NewName.Items[0]);
????????}
????}
二.第二種情況是用javascript實現(xiàn):
function?SelectOne()
?????????{
?????????????var?lst1=window.document.getElementById("<%=lb_Sourse.ClientID?%>");
?????????????var?lst2=window.document.getElementById("<%=lb_NewName.ClientID?%>");
?????????????var?lstindex=lst1.selectedIndex;
?????????????var?length?=?lst2.options.length;
?????????????var?isExists?=?false;
?????????????if(lstindex<0)
?????????????????return;
?????????????else?if(length?!=?null)
?????????????{
?????????????????for(var?i=0;i?<?length;?i++)
?????????????????{
??????????????????????if(lst2.options[i].text?==?lst1[lstindex].text?&&?lst2.options[i].value?==?lst1[lstindex].value)
??????????????????????{
?????????????????????????isExists?=?true;
??????????????????????}
?????????????????}
?????????????}
?????????????else
?????????????{
?????????????????return;
?????????????}
?????????????if?(isExists?==?false)
?????????????{
?????????????????var?v?=?lst1.options[lstindex].value;
?????????????????var?t?=?lst1.options[lstindex].text;
?????????????????lst2.options[lst2.options.length]?=?new?Option(t,v,true,true);
?????????????????lst1.options[lstindex].parentNode.removeChild(lst1.options[lstindex]);
?????????????}
?????????????else
?????????????{
?????????????????alert("所選條目已經(jīng)存在");
?????????????????return?false;
?????????????}
?????????}
?????????function?DelOne()
?????????{
?????????????var?lst1=window.document.getElementById("<%=lb_Sourse.ClientID?%>");
?????????????var?lst2=window.document.getElementById("<%=lb_NewName.ClientID?%>");
?????????????var?lstindex=lst2.selectedIndex;
?????????????if(lstindex>=0)
?????????????{
//?????????????????var?v?=?lst2.options[lstindex].value+";";
?????????????????var?v?=?lst2.options[lstindex].value;
?????????????????var?t?=?lst2.options[lstindex].text;
?????????????????lst1.options[lst1.options.length]?=?new?Option(t,v,true,true);
?????????????????lst2.options[lstindex].parentNode.removeChild(lst2.options[lstindex]);
?????????????}
?????????}
?????????function?SelectAll()
?????????{
?????????????var?lst1=window.document.getElementById("<%=lb_Sourse.ClientID?%>");
?????????????var?length?=?lst1.options.length;
?????????????for(var?i=0;i<length;i++)
?????????????{
?????????????????var?v?=?lst1.options[i].value;
?????????????????var?t?=?lst1.options[i].text;?????????????
?????????????????var?lst2=window.document.getElementById("<%=lb_NewName.ClientID?%>");
?????????????????lst2.options[i]?=?new?Option(t,v,true,true);
?????????????}
?????????}
?????????
?????????function?DelAll()
?????????{
?????????????var?lst2=window.document.getElementById("<%=lb_NewName.ClientID?%>");
?????????????var?length?=?lst2.options.length;
?????????????for(var?i=length;i>0;i--)
?????????????{
?????????????????lst2.options[i-1].parentNode.removeChild(lst2.options[i-1]);
?????????????}
?????????}
一.一種情況是這四個按鈕用服務(wù)器控件:
????/**////?<summary>
????///?選中全部
????///?</summary>
????///?<param?name="sender"></param>
????///?<param?name="e"></param>
????protected?void?btnSelectAll_ServerClick(object?sender,?EventArgs?e)
????{
????????for?(int?i?=?0;?i?<?lb_Sourse.Items.Count;?i++)
????????{
????????????lb_NewName.Items.Add(new?ListItem(lb_Sourse.Items[i].Text,?lb_Sourse.Items[i].Value));
????????}
????????while(lb_Sourse.Items.Count?>?0)
????????{
???????????lb_Sourse.Items.Remove(lb_Sourse.Items[0]);
????????}
????}
????/**////?<summary>
????///?選中一個
????///?</summary>
????///?<param?name="sender"></param>
????///?<param?name="e"></param>
????protected?void?btnSelectOne_ServerClick(object?sender,?EventArgs?e)
????{
????????if?(lb_Sourse.SelectedIndex?!=?-1)
????????{
????????????string?StrPersonFlow?=?"";
????????????for?(int?i?=?this.lb_Sourse.Items.Count;?i?>?0;?i--)
????????????{
????????????????if?(this.lb_Sourse.Items[i?-?1].Selected)
????????????????{
????????????????????StrPersonFlow?+=?this.lb_Sourse.Items[i?-?1].Value?+?",";
????????????????????this.lb_NewName.Items.Add(this.lb_Sourse.Items[i?-?1]);
????????????????????this.lb_Sourse.Items.Remove(this.lb_Sourse.Items[i?-?1]);
????????????????}
????????????}
????????}
????????else
????????{
????????????Msg.Text?=?"請選中人員!";
????????}
????}
????/**////?<summary>
????/// 刪除單個
????///?</summary>
????///?<param?name="sender"></param>
????///?<param?name="e"></param>
????protected?void?btnDelOne_ServerClick(object?sender,?EventArgs?e)
????{
????????if?(lb_NewName.SelectedIndex?!=?-1)
????????{
????????????string?StrPersonFlow?=?"";
????????????for?(int?i?=?this.lb_NewName.Items.Count;?i?>?0;?i--)
????????????{
????????????????if?(this.lb_NewName.Items[i?-?1].Selected)
????????????????{
????????????????????this.lb_Sourse.Items.Add(this.lb_NewName.Items[i?-?1]);
????????????????????this.lb_NewName.Items.Remove(this.lb_NewName.Items[i?-?1]);
????????????????????StrPersonFlow?=?this.lb_NewName.Items[i?-?1].Value?+?",";
????????????????}
????????????}
????????}
????????else
????????{
????????????Msg.Text?=?"請選中人員!";
????????}
?
????}
????/**////?<summary>
????///?刪除全部
????///?</summary>
????///?<param?name="sender"></param>
????///?<param?name="e"></param>
????protected?void?btnDelAll_ServerClick(object?sender,?EventArgs?e)
????{
????????for?(int?i?=?0;?i?<?lb_NewName.Items.Count;?i++)
????????{
????????????lb_Sourse.Items.Add(new?ListItem(lb_NewName.Items[i].Text,?lb_NewName.Items[i].Value));
????????}
????????while?(lb_NewName.Items.Count?>?0)
????????{
????????????lb_NewName.Items.Remove(lb_NewName.Items[0]);
????????}
????}
二.第二種情況是用javascript實現(xiàn):
function?SelectOne()
?????????{
?????????????var?lst1=window.document.getElementById("<%=lb_Sourse.ClientID?%>");
?????????????var?lst2=window.document.getElementById("<%=lb_NewName.ClientID?%>");
?????????????var?lstindex=lst1.selectedIndex;
?????????????var?length?=?lst2.options.length;
?????????????var?isExists?=?false;
?????????????if(lstindex<0)
?????????????????return;
?????????????else?if(length?!=?null)
?????????????{
?????????????????for(var?i=0;i?<?length;?i++)
?????????????????{
??????????????????????if(lst2.options[i].text?==?lst1[lstindex].text?&&?lst2.options[i].value?==?lst1[lstindex].value)
??????????????????????{
?????????????????????????isExists?=?true;
??????????????????????}
?????????????????}
?????????????}
?????????????else
?????????????{
?????????????????return;
?????????????}
?????????????if?(isExists?==?false)
?????????????{
?????????????????var?v?=?lst1.options[lstindex].value;
?????????????????var?t?=?lst1.options[lstindex].text;
?????????????????lst2.options[lst2.options.length]?=?new?Option(t,v,true,true);
?????????????????lst1.options[lstindex].parentNode.removeChild(lst1.options[lstindex]);
?????????????}
?????????????else
?????????????{
?????????????????alert("所選條目已經(jīng)存在");
?????????????????return?false;
?????????????}
?????????}
?????????function?DelOne()
?????????{
?????????????var?lst1=window.document.getElementById("<%=lb_Sourse.ClientID?%>");
?????????????var?lst2=window.document.getElementById("<%=lb_NewName.ClientID?%>");
?????????????var?lstindex=lst2.selectedIndex;
?????????????if(lstindex>=0)
?????????????{
//?????????????????var?v?=?lst2.options[lstindex].value+";";
?????????????????var?v?=?lst2.options[lstindex].value;
?????????????????var?t?=?lst2.options[lstindex].text;
?????????????????lst1.options[lst1.options.length]?=?new?Option(t,v,true,true);
?????????????????lst2.options[lstindex].parentNode.removeChild(lst2.options[lstindex]);
?????????????}
?????????}
?????????function?SelectAll()
?????????{
?????????????var?lst1=window.document.getElementById("<%=lb_Sourse.ClientID?%>");
?????????????var?length?=?lst1.options.length;
?????????????for(var?i=0;i<length;i++)
?????????????{
?????????????????var?v?=?lst1.options[i].value;
?????????????????var?t?=?lst1.options[i].text;?????????????
?????????????????var?lst2=window.document.getElementById("<%=lb_NewName.ClientID?%>");
?????????????????lst2.options[i]?=?new?Option(t,v,true,true);
?????????????}
?????????}
?????????
?????????function?DelAll()
?????????{
?????????????var?lst2=window.document.getElementById("<%=lb_NewName.ClientID?%>");
?????????????var?length?=?lst2.options.length;
?????????????for(var?i=length;i>0;i--)
?????????????{
?????????????????lst2.options[i-1].parentNode.removeChild(lst2.options[i-1]);
?????????????}
?????????}
轉(zhuǎn)載于:https://www.cnblogs.com/ygl127/archive/2007/07/26/832749.html
總結(jié)
以上是生活随笔為你收集整理的两个ListBox的相互操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《Effective C#》某些地方实在
- 下一篇: DataRabbit 轻量的数据访问框架