C#编程开发,我在后台写的函数获取到值,分别赋给几个select控件,在源码里面把select变成了服务器控件,后台写代码select.value=**,添加断点发现后面的值是存在,但是运行的时候页面中不显示select控件相应属性的值,请问有什么解决办法吗

解决方案 »

  1.   

    不知楼主是否说的是选中值问题,不行的话将代码贴下
    <select runat="server" id="stest">
    <option value="1">一</option>
    <option value="2">二</option>
    </select>  protected void Page_Load(object sender, EventArgs e)
        {        stest.Value = "2";
    }
      

  2.   

    回复三楼,确实是需要这样,不过我那个Value值是通过函数查询出来的
               (select控件) stockId.Value = Entity.StorehouseId(查询的函数值,值是存在的);
      

  3.   

    我按照你这个方法测试了一下,也不行,没有选中值,还有个问题是,虽然页面中不不显示选中的相应数据,但是实际是有数据的,因为这个页面是有判断哪些属性不能为空才能保存的,而虽然显示的没有相应的数据,保存的时候是可以保存的,说明Value值传过去了,但是没显示出来,是这样吗?
      

  4.   

    建议楼主 吧  aspx页面代码也贴下,
    我写的那个例子 是已经测试通过的 了
      

  5.   


       /// <summary>
            /// 初始化信息
            /// </summary>
            public void GetEntity()
            {
                G5_SheetStockInDao sDao = new G5_SheetStockInDao();
                G5_SheetStockInInfo Entity=sDao.Get<int>(int.Parse(this.GetQueryValue("Id")));
                txtStockInCode.Text = Entity.StockInCode;
                stockId.Value = Entity.StorehouseId;
                ManufacturerId.Value = Entity.ManufacturerId.ToString();
                supplierId.Value = Entity.SupplierId.ToString();
                jumboPlatesStockInType.Value = Entity.StockInType;
                StockInDate.Text = Entity.StockInDate.ToString("yyyy-MM-d");
                checker.Value = Entity.CheckPersonId.ToString();}源码是这个的格式:  <select id="stockId" name="stockId" style="width:150px;" runat="server"><option value=""></option></select>这代码没什么用,函数都是封装好的,可以确定值是有查询出来的
    我按照你这个方法测试了一下,也不行,没有选中值,还有个问题是,虽然页面中不不显示选中的相应数据,但是实际是有数据的,因为这个页面是有判断哪些属性不能为空才能保存的,而虽然显示的没有相应的数据,保存的时候是可以保存的,说明Value值传过去了,但是没显示出来,是这样吗?
      

  6.   

    你select 下有 option吗?
      

  7.   

    本来是有一个初始的option value=“”
    现在我想起来了,是因为我没有给option显示的内容,只给了value值,请问怎么从后台给显示内容
      

  8.   

     ListItem li = new ListItem("一","1");
            ListItem li1 = new ListItem("二", "2");
            stest.Items.Add(li);
            stest.Items.Add(li1);
            stest.Value = "2";或
            DataTable dt = new DataTable();
            dt.Columns.Add("text");
            dt.Columns.Add("val");
            dt.Rows.Add(new object[] { "一", "1" });
            dt.Rows.Add(new object[] { "二", "2" });
            DropDownList1.DataValueField = "val";
            DropDownList1.DataTextField = "text";
            DropDownList1.DataSource = dt;
            DropDownList1.DataBind();
            DropDownList1.SelectedIndex = 0;