我在ASP.NET Codebehind中如何实例化UpdatePanel?

时间:2011-03-01 13:29:51

标签: c# asp.net updatepanel

背景

我有以下代码,当点击一个名为refresh的按钮时,它应该刷新数据。

public static void refreshBaan()
{
    SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
    SqlCommand comm = new SqlCommand("sp_start_job", conn);
    SqlParameter jobname = new SqlParameter("job_name", "EBS");
    SqlParameter servername = new SqlParameter("server_name", "bnvmsql0a610912");
    comm.Parameters.Add(jobname);
    comm.Parameters.Add(servername);
    comm.CommandType = CommandType.StoredProcedure;
    conn.Open();
    comm.ExecuteReader();
    conn.Close(); `
}

我有一个我想在点击时显示的Updatepanel,所以我自然想在上面的语句中加入Updatpanel1.visible = true;,但它不允许我。

问题

如何使用updatepanel刷新数据?我需要在哪里实例化该更新面板?

3 个答案:

答案 0 :(得分:1)

您只能使用非静态方法访问类的实例成员。

我建议专门为按钮创建一个点击处理程序,例如:

protected void refresh_Click(object sender, EventArgs e)
{
    updatePanel1.Visible = true;
    refreshBaan();
}

按钮声明如下所示:

<asp:Button ID="refresh" runat="server" OnClick="refresh_Click" />

答案 1 :(得分:0)

你是什么意思,它不起作用?代码不编译??静态方法无法访问包含UpdatePanel的非静态页面级属性。将方法更改为非静态,您应该没问题。

答案 2 :(得分:0)