selectedindex和selectedvalue属性是互斥的例外吗? [英] the selectedindex and selectedvalue attributes are mutually exclusive exception?

查看:117
本文介绍了selectedindex和selectedvalue属性是互斥的例外吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 protected void ddlbranchdate_SelectedIndexChanged(object sender, EventArgs e)
   {
       try
       {
           DataTable dtgetvalues = new DataTable();
           //objRetailPL.date = Convert.ToDateTime(hdndate.Value);
           objRetailPL.branchdate = ddlbranchdate.SelectedItem.ToString();
           dtgetvalues = objRetailBAL.getbradisdate(objRetailPL);
           foreach(GridViewRow row in gvMeatDispatch.Rows)
           {
               DataTable dtpr = new DataTable();
               DropDownList ddl1 = (DropDownList)row.FindControl("ddlpartyname");
               objRetailPL.branch = dtgetvalues.Rows[0]["branch"].ToString();

               dtpr = objRetailBAL.getbran(objRetailPL);
               ddl1.DataSource = dtpr;
               ddl1.DataTextField = "partyname";
               ddl1.DataValueField = "sno";
               ddl1.DataBind();
               ddl1.Items.Add(new ListItem("--Select--", "0"));
              ddl1.SelectedIndex = ddl1.Items.Count - 1;
           }
       }
}







为什么我得到这个例外?



i我正在使用动态网格视图并在Button Control的帮助下动态添加行..



外面我声明了另一个下拉列表..如果用户从此下拉列表中选择了一些值

然后自动将值绑定到Dynamic Gridview,下拉列表值..





这是我在动态控制方法中的Setprevious数据。我称之为Dropdownlist selectedindexchanged event ..赞..






why i am getting this exception?..

i am using Dynamic Gridview and adding Rows Dynamically with the help of Button Control..

Outside i am declare another dropdown list ..if user selected some value from this Dropdownlist
then automatically bind the values to Dynamic Gridview ,Dropdown list values..


This is my Setprevious Data in Dynamic control Method..Here i called Dropdownlist selectedindexchanged event ..like..

private void SetPreviousData()
   {
       try
       {
           int rowIndex = 0;
           if (ViewState["CurrentTable"] != null)
           {
               DataTable dt = (DataTable)ViewState["CurrentTable"];
               if (dt.Rows.Count > 0)
               {
                   for (int i = 0; i < dt.Rows.Count; i++)
                   {
                       DropDownList ddlpname = (DropDownList)gvMeatDispatch.Rows[rowIndex].Cells[1].FindControl("ddlpartyname");
                       DropDownList ddlbt = (DropDownList)gvMeatDispatch.Rows[rowIndex].Cells[2].FindControl("ddlbirdtype");
                       TextBox txttotwt = (TextBox)gvMeatDispatch.Rows[rowIndex].Cells[3].FindControl("txttotwt");
                       TextBox txttransbirds1 = (TextBox)gvMeatDispatch.Rows[rowIndex].Cells[4].FindControl("txtrateforkg");
                       TextBox txtmort1 = (TextBox)gvMeatDispatch.Rows[rowIndex].Cells[5].FindControl("txtdcno");

                      // Dropdownlist selectedIndex Changed event

                       ddlbranchdate_SelectedIndexChanged(null, null);

                       ddlpname.SelectedValue = dt.Rows[i]["Col1"].ToString();
                       ddlbt.SelectedValue = dt.Rows[i]["Col2"].ToString();
                       txttotwt.Text = dt.Rows[i]["col3"].ToString();
                       txttransbirds1.Text = dt.Rows[i]["Col4"].ToString();
                       txtmort1.Text = dt.Rows[i]["Col5"].ToString();

                       rowIndex++;
                   }
               }
           }
       }





请帮帮我...



please help me...

推荐答案

由于在同一回发期间无法设置SelectedItem两次,因此需要先检查它。例如:



Since you can't set the SelectedItem twice during the same postback you need to check for it first. For example:

if (ddl.SelectedItem != null)
   ddl.SelectedItem.Selected = false;





因此,检查是否有所选项目,不做任何事情或清除它并重新设置。



So, check to see if there is a selected item and either do nothing or clear it out and set it again.


这篇关于selectedindex和selectedvalue属性是互斥的例外吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆