是否可以将datatable对象作为参数传递给另一个控件对象,如下所示:
protected void DropDownlist2(string model)
{
queryString = "Select modelcar from useritem where typecar=@model";
SqlCommand cmd = new SqlCommand(queryString, useritemConnectionString1);
cmd.Parameters.AddWithValue("@model", model);
useritemConnectionString1.Open();
DataTable dt = new DataTable();
SqlDataAdapter ad = new SqlDataAdapter(cmd);
ad.Fill(dt);
if (dt.Rows.Count > 0)
{
DropDownList2.DataSource = dt;
DropDownList2.DataBind();
}
useritemConnectionString1.Close();
Button1(dt);
}
private void Button1_Click(DataTable dt)
{
SqlDataReader dr = cmd.ExecuteReader();
if(dr.HasRows)
{
while (dr.Read())
{
System.Web.UI.WebControls.Image imgControl = new System.Web.UI.WebControls.Image();
HtmlGenericControl paraContainer = new HtmlGenericControl("p");
paraContainer.Controls.Add(imgControl);
PlaceHolder1.Controls.Add(paraContainer);
//Get Image Information
imgControl.ImageUrl = dr["Image"].ToString();
}
}
else
dr.Close();
}
出于某种原因,我收到此错误
由于其保护级别,button1_Click(System.data.datatable)无法访问
答案 0 :(得分:0)
制作Button1_Click
方法protected
。
检查,来自Button1
的{{1}}方法是否与DropDownlist2
相同?
<强>更新强>
在您的下拉列表选择事件处理程序中,您应该将Button1_Click
对象存储在表单的某个字段或属性中。在与您的按钮单击对应的事件处理程序中,您应该使用此字段进行操作。