2013-05-31 2 views
0

Есть ли способ иметь буквальное обновление при нажатии кнопки «Обновить» в gridview? Литерал заполняется суммой всех значений в одном столбце gridview, и когда gridview обновляется, я также хочу, чтобы литерал немедленно обновлялся. GridView заполняется с сервера sql. Моих литерала коды за это:Обновление литерала и gridView одновременно

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 но это не сработало.

Заранее благодарим за помощь.

ответ

0

я в конечном итоге положить код в методе 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(); 
    } 

}