system.data.dataRowview 不包含名为"manager1的属性"

lixiang4024 2007-03-28 06:31:48
private string sqlstr1 = "Data Source=.;Initial Catalog=company;User ID=sa;Password=overmax2005";
protected void GridView1_RowDataBound1(object sender, GridViewRowEventArgs e)
{
if (((DropDownList)e.Row.FindControl("DDLXueli1")) != null)
{
DropDownList ddlxueli = (DropDownList)e.Row.FindControl("DDLXueli1");



DataSet ds = new DataSet();
SqlConnection sqlconn = new SqlConnection(sqlstr1);
string sql = "SELECT * FROM manager1";
SqlDataAdapter sqlAdapter = new SqlDataAdapter(sql, sqlconn);
sqlconn.Open();
sqlAdapter.Fill(ds);
sqlconn.Close();
DataTable dt = ds.Tables[0];
DataRow dr = dt.NewRow();
dt.Rows.InsertAt(dr, 0);
ddlxueli.DataSource = dt.DefaultView;
ddlxueli.DataTextField = "manager1";
ddlxueli.DataValueField = "manager1";
ddlxueli.DataBind();//这行提示datarowview
ddlxueli.SelectedValue = ((HiddenField)e.Row.FindControl("HDFXueli")).Value;

提示d
...全文
418 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiao545214147 2007-03-29
  • 打赏
  • 举报
回复
If (e.Row.RowType = DataControlRowType.DataRow)

{
....代码
}
jimu8130 2007-03-29
  • 打赏
  • 举报
回复
建议你加上这个判断在rowdatabound事件里面If (e.Row.RowType = DataControlRowType.DataRow)
{}
leafsword_519 2007-03-29
  • 打赏
  • 举报
回复
string sql = "SELECT * FROM manager1";
ddlxueli.DataTextField = "manager1";//这里应该用你查询到数据库字段表示
ddlxueli.DataValueField = "manager1";//同上

比如
string sql = "select cityid,cityname from city";
ddl.DataTextField = "cityname";
ddl.DataValueField = "cityid";
ylqmf 2007-03-29
  • 打赏
  • 举报
回复
up
jimu8130 2007-03-29
  • 打赏
  • 举报
回复
msn发消息你了
lixiang4024 2007-03-29
  • 打赏
  • 举报
回复
你有MSN或QQ吗,57125749
jimu8130 2007-03-29
  • 打赏
  • 举报
回复
郁闷,lz只会贴代码,不会描述信息啊?
lixiang4024 2007-03-29
  • 打赏
  • 举报
回复
另外,ddlxueli.DataSource = dt.DefaultView;
ddlxueli.DataTextField = "manager1";
ddlxueli.DataValueField = "manager1";

ddlxueli.DataTextField = "status";
ddlxueli.DataValueField = "status";

到底manager1和status哪个是相应数据库表的字段名称?

ddlxueli.DataTextField = "manager1";
ddlxueli.DataValueField = "manager1

string sql = "SELECT * FROM manager1";





ddlxueli.DataTextField = "status";
ddlxueli.DataValueField = "status";
string sql = "SELECT * FROM status";

jimu8130 2007-03-29
  • 打赏
  • 举报
回复
rowupdate事件里面
String strConnection = ConfigurationSettings.AppSettings["ConnectionString"];
这个连接字符串最好能设置成为一个全局常量
这样不用每次都查询xml文件

然后下面的语句可以改写成
using(SqlConnection myConnection = new SqlConnection(strConnection))
{
SqlCommand cm = new SqlCommand("updatelogin", myConnection);
cm.CommandType = CommandType.StoredProcedure;
cm.Connection.Open();


int id;
string username, userkind, wentilist, wenti, prio, status,manager1;
id = int.Parse(GridView1.Rows[e.RowIndex].
Cells[0].Text);
username = ((TextBox)GridView1.Rows[e.RowIndex].
Cells[1].Controls[0]).Text;
userkind = ((TextBox)GridView1.Rows[e.RowIndex].
Cells[2].Controls[0]).Text;
wenti = ((TextBox)GridView1.Rows[e.RowIndex].
Cells[3].Controls[0]).Text;
wentilist = ((TextBox)GridView1.Rows[e.RowIndex].
Cells[4].Controls[0]).Text;

status = ((DropDownList)GridView1.Rows[e.RowIndex].FindControl("DDLXueli")).SelectedValue;

manager1= ((DropDownList)GridView1.Rows[e.RowIndex].FindControl("DDLXueli1")).SelectedValue;

cm.Parameters.Add(new SqlParameter("@id", id));
cm.Parameters.Add(new SqlParameter("@username", username));
cm.Parameters.Add(new SqlParameter("@userkind", userkind));
cm.Parameters.Add(new SqlParameter("@wenti", wenti));
cm.Parameters.Add(new SqlParameter("@wentilist", wentilist));
cm.Parameters.Add(new SqlParameter("@status", status));
cm.Parameters.Add(new SqlParameter("@manager1", manager1));

cm.ExecuteNonQuery();

GridView1.EditIndex = -1;
Bindgridview();
}
jimu8130 2007-03-29
  • 打赏
  • 举报
回复
你的gridview怎么对应两个rowdatabound事件啊?
另外,ddlxueli.DataSource = dt.DefaultView;
ddlxueli.DataTextField = "manager1";
ddlxueli.DataValueField = "manager1";

ddlxueli.DataTextField = "status";
ddlxueli.DataValueField = "status";

到底manager1和status哪个是相应数据库表的字段名称?
lixiang4024 2007-03-29
  • 打赏
  • 举报
回复
这个应该怎么优化?在一个gridview中安插两个dropdownlist并实现更新. dropdwonlist的数据是从另外两个表读取

private string sqlstr1 = "Data Source=.;Initial Catalog=company;User ID=sa;Password=2007";
protected void GridView1_RowDataBound1(object sender, GridViewRowEventArgs e)
{
if (((DropDownList)e.Row.FindControl("DDLXueli1")) != null)
{
DropDownList ddlxueli = (DropDownList)e.Row.FindControl("DDLXueli1");



DataSet ds = new DataSet();
SqlConnection sqlconn = new SqlConnection(sqlstr1);
string sql = "SELECT * FROM manager1";
SqlDataAdapter sqlAdapter = new SqlDataAdapter(sql, sqlconn);
sqlconn.Open();
sqlAdapter.Fill(ds);
sqlconn.Close();
DataTable dt = ds.Tables[0];
DataRow dr = dt.NewRow();
dt.Rows.InsertAt(dr, 0);
ddlxueli.DataSource = dt.DefaultView;
ddlxueli.DataTextField = "manager1";
ddlxueli.DataValueField = "manager1";
ddlxueli.DataBind();
ddlxueli.SelectedValue = ((HiddenField)e.Row.FindControl("HDFXueli")).Value;

}
}



protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{

String strConnection = ConfigurationSettings.AppSettings["ConnectionString"];
SqlConnection myConnection = new SqlConnection(strConnection);

SqlCommand cm = new SqlCommand("updatelogin", myConnection);
cm.CommandType = CommandType.StoredProcedure;
cm.Connection.Open();


int id;
string username, userkind, wentilist, wenti, prio, status,manager1;
id = int.Parse(GridView1.Rows[e.RowIndex].
Cells[0].Text);
username = ((TextBox)GridView1.Rows[e.RowIndex].
Cells[1].Controls[0]).Text;
userkind = ((TextBox)GridView1.Rows[e.RowIndex].
Cells[2].Controls[0]).Text;
wenti = ((TextBox)GridView1.Rows[e.RowIndex].
Cells[3].Controls[0]).Text;
wentilist = ((TextBox)GridView1.Rows[e.RowIndex].
Cells[4].Controls[0]).Text;

status = ((DropDownList)GridView1.Rows[e.RowIndex].FindControl("DDLXueli")).SelectedValue;

manager1= ((DropDownList)GridView1.Rows[e.RowIndex].FindControl("DDLXueli1")).SelectedValue;

cm.Parameters.Add(new SqlParameter("@id", id));
cm.Parameters.Add(new SqlParameter("@username", username));
cm.Parameters.Add(new SqlParameter("@userkind", userkind));
cm.Parameters.Add(new SqlParameter("@wenti", wenti));
cm.Parameters.Add(new SqlParameter("@wentilist", wentilist));
cm.Parameters.Add(new SqlParameter("@status", status));
cm.Parameters.Add(new SqlParameter("@manager1", manager1));

cm.ExecuteNonQuery();

GridView1.EditIndex = -1;
Bindgridview();
}
private string sqlstr = "Data Source=.;Initial Catalog=company;User ID=sa;Password=2007";
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (((DropDownList)e.Row.FindControl("DDLXueli")) != null)
{
DropDownList ddlxueli = (DropDownList)e.Row.FindControl("DDLXueli");



DataSet ds = new DataSet();
SqlConnection sqlconn = new SqlConnection(sqlstr);
string sql = "SELECT * FROM status";
SqlDataAdapter sqlAdapter = new SqlDataAdapter(sql, sqlconn);
sqlconn.Open();
sqlAdapter.Fill(ds);
sqlconn.Close();
DataTable dt = ds.Tables[0];
DataRow dr = dt.NewRow();
dt.Rows.InsertAt(dr, 0);
ddlxueli.DataSource = dt.DefaultView;
ddlxueli.DataTextField = "status";
ddlxueli.DataValueField = "status";
ddlxueli.DataBind();
ddlxueli.SelectedValue = ((HiddenField)e.Row.FindControl("HDFXueli")).Value;

}
}

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧