zoukankan      html  css  js  c++  java
  • .net中不能在DropDownList中选中多个项的解决方法

    页面中放有多个DropDownList,点击修改时候,需要根据值来设置两个DropDownList的选中项,当值为空时则需要选中默认值。

    页面报错:不能在DropDownList中选中多个项

    直接粘解决方法:

      

     1 private void bind(string s1,string s2)
     2 {
     3     List<test> lists=new List<test>();
     4             for(int i=0;i<10;i++)
     5             {
     6                 test t=new test();
     7                 t.ctime=DateTime.Now.AddMinutes(Convert.ToDouble(i));
     8                 t.name="name"+i.ToString();
     9                 t.no="22"+i.ToString();
    10                 lists.Add(t);
    11             }
    12             d1.DataSource=getDataTable(lists);
    13             d1.DataTextField="name";
    14             d1.DataValueField="no";
    15             d1.DataBind();
    16 
    17             d2.DataSource = getDataTable(lists);
    18             d2.DataTextField="name";
    19             d2.DataValueField="no";
    20             d2.DataBind();            
    21             
    22             if(!string.IsNullOrEmpty(s1))
    23             {                
    24                 d1.SelectedValue=s1;
    25             }else
    26             {             
    27                 d1.SelectedValue="-1";
    28             }
    29 
    30             if(!string.IsNullOrEmpty(s2))
    31             {             
    32                 d2.SelectedValue=s2;
    33             }else
    34             {             
    35                 d2.SelectedValue="-1";
    36             }
    37 }

    然后需要一个将list转换成DataTable的方法:

        public DataTable getDataTable(List<test> list)
            {
                DataTable dt = null;
                try
                {
                    dt = new DataTable();
                    dt.Columns.Add("name");
                    dt.Columns.Add("no");
    
                    DataRow dr = dt.NewRow();
                    dr["name"] = "--未设置--";
                    dr["no"] = "-1";
                    dt.Rows.InsertAt(dr, 0);
    
                    foreach (test v in list)
                    {
                        dr = dt.NewRow();
                        dr["name"] = v.name;
                        dr["no"] = v.no;
                        dt.Rows.Add(dr);
                    }
                }
                catch
                { 
                    
                }
                return dt;
            }

    当然了,对象是少不了的。这里假设是test

    1     public class test
    2     {
    3         public string name{get;set;}
    4         public string no{get;set;}
    5     }

    ok.可以正常运行了。

  • 相关阅读:
    关于编码问题
    期中架构之前所有的命令-总结
    Bootstrap表格添加搜索栏
    Bootstrap表格分页(二)
    Bootstrap表格分页(一)
    Entity Framework 分页处理
    Protocol Buffers v3.0.0编译安装小记
    golang学习笔记
    Java 对象生命周期
    Java 操作符
  • 原文地址:https://www.cnblogs.com/honsty/p/3174694.html
Copyright © 2011-2022 走看看