同时更新文字和gridView

本文关键字:gridView 文字 更新 | 更新日期: 2023-09-27 18:16:12

当gridview中的"update"按钮被击中时,是否有任何方法可以进行文字更新?文字是用gridview一列中所有值的总和填充的,当gridview更新时,我也希望文字立即更新。gridView正在从sql server填充。我的文字背后的代码是:

   protected void litBalance_Init(object sender, EventArgs e)
    {
        string queryString =
            "SELECT SUM(AuthorizationAmount) AS Balance FROM dbo.CPSTransaction WHERE (ApplicationIDPrimary = '" + Request.QueryString["WSUID"] + "')";
        using (SqlConnection connection =
                   new SqlConnection(ConfigurationManager.ConnectionStrings["OrientationConnectionString"].ConnectionString))
        {
            SqlCommand command =
                new SqlCommand(queryString, connection);
            connection.Open();
            SqlDataReader reader = command.ExecuteReader();
            if (reader.HasRows)
            {
                reader.Read();
                litBalance.Text = reader["Balance"].ToString();
            }
            // Call Close when done reading.
            reader.Close();
        }
    }

和。net是:

<asp:Literal ID="litBalance" runat="server" oninit="litBalance_Init"></asp:Literal>

我试过使用标签而不是文字,并给gridview的编辑按钮和标签相同的ValidationGroup,但没有工作。

提前感谢您的帮助。

同时更新文字和gridView

您是否尝试过将您的文字编辑代码放在GridView的RowCommand事件处理程序中?

http://msdn.microsoft.com/en-US/library/system.web.ui.webcontrols.gridview.rowcommand (v = vs.80) . aspx

我最后把代码放在gv_RowUpdated方法中:

protected void gvPaymentDetails_RowUpdated(object sender, GridViewUpdatedEventArgs e)
{
    string balanceQueryString =
        "SELECT SUM(AuthorizationAmount) AS Balance FROM dbo.CPSTransaction WHERE (ApplicationIDPrimary = '" + Request.QueryString["WSUID"] + "')";
    using (SqlConnection balanceConnection =
               new SqlConnection(ConfigurationManager.ConnectionStrings["OrientationConnectionString"].ConnectionString))
    {
        SqlCommand balanceCommand =
            new SqlCommand(balanceQueryString, balanceConnection);
        balanceConnection.Open();
        SqlDataReader balanceReader = balanceCommand.ExecuteReader();
        if (balanceReader.HasRows)
        {
            balanceReader.Read();
            litBalance.Text = balanceReader["Balance"].ToString();
        }
        // Call Close when done reading.
        balanceReader.Close();
    }
}