当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

 ·关于2000下域的问题高手进来    »显示摘要«
    摘要: 为了把自己的设置成一个域里的服务器,需要增加一个域,然后添加计算机,但是问题出来了:我打开“我的电脑”“属性”,网络标识里面“工作组”和“域”都是灰度显示,怎么办??????急啊!高手指点! ......
 ·机器自关机    »显示摘要«
    摘要: 机器使用的时候有时会自己关掉,请问该怎样解决? ......


复制 DropDownList 之后,莫名其妙的“同步选择”,奇怪的问题。

我在   web   窗体上放了两个   DropDownList,我初始化了   DropDownList1:  
  DropDownList1.Items.Add("abc");  
  DropDownList1.Items.Add("def");  
  DropDownList1.Items.Add("hijklmn");  
   
   
  然后我想把   DropDownList2   做的和   DropDownList1   一样,我用了下面的两种方法:  
  方法一:  
  ListItem[]   items   =   new   ListItem[DropDownList1.Items.Count];  
  DropDownList1.Items.CopyTo(items,   0);  
  DropDownList2.Items.AddRange(items);  
   
  方法二:  
  foreach   (ListItem   li   in   DropDownList1.Items)  
  DropDownList2.Items.Add(li);  
  (无论用哪种方法,都会导致下面的结果)  
   
  我执行  
  DropDownList2.SelectedIndex   =   2;  
   
  奇怪的是,DropDownList1   也被默认选中了   2,也就是说,无论怎么样,DropDownList2   选中哪个,DropDownList1   就选中哪个。程序没有别的代码。上面的代码都放在了   Page_Load   里面。  
   
  究竟为什么会这样?怎么解决?

NO.1   作者: layershow

hoho  
  试试   把代码加上   if   (!IsPostBack)   {   ....   }   先.  
   
 

NO.2   作者: Knight94

试试这样:  
  for(int   i=0;i<DropDownList1.Items.Count;i++)  
  DropDownList2.Items.Add(DropDownList1.Items[i].ToString());  
 

NO.3   作者: timmy3310

http://expert.csdn.net/Expert/topic/1665/1665825.xml?temp=.7209741  
   
  这个贴子里面我给你的复制方法是可以复制的,但是是复制引用,所以会出现你的情况,如果按照这种方式复制,不出现这种情况才是不正常  
   
  按照你的要求,那么只有复制Value  
   
  "如果要同时复制   value,那整个语句岂不是显得很啰嗦?而且效率上也低一些。"  
   
  纠正你一个观点,代码很多、很罗嗦不一定代表效率低,要看你调用方法的效率,就像Array.Copy的方法,它里面还不是循环复制,只是这个循环他帮你写了,不用你自己写而已  
   
  你的代码应改为:  
  foreach   (ListItem   li   in   DropDownList1.Items)  
  DropDownList2.Items.Add(   new   ListItem(li.Text,li.Value)   );


 ·如何远程启动x window    »显示摘要«
    摘要: 如何远程启动x window 假设本地主机ip是172.16.1.1,远程主机ip为172.16.1.2。 我找到如下几种方法: 方法一: ------------------------------------------ 本地是linux,使用如下命令 x :1 -query 172.16.1.2 结果: 屏幕变成黑色,鼠标成一个“×”的形状(如startx启动图形化界面时还......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE