2011-04-28 111 views
0

我試圖用aspx.cs在下列代碼文件點擊按鈕後,如何獲取grid.rows.count?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 

namespace Test 
{ 
    public partial class pgTest : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
      lblResult.Text = grid.Rows.Count.ToString(); 
     } 
    } 
} 

但不知何故,這始終沒有得到網格行計數我在第一按鈕點擊,但之後它會顯示在第二次點擊按鈕。

例如: 如果我在第一次點擊時設法找到了5條記錄,但直到第二次點擊按鈕時它纔會在屏幕上顯示5條記錄。

有誰知道我該如何解決這個問題?我怎麼做它只會實時顯示行數?

+0

務必設法計算行數之前綁定的網格它有。 – Jemes 2011-04-28 01:43:23

+0

我認爲這是正確的。在閱讀網格之前,您不會顯示任何數據綁定。 – nycdan 2011-04-28 01:49:00

+0

我該怎麼做,它會讀取網格並實時顯示屏幕上的計數? – 2011-04-28 01:53:20

回答

0

將該行代碼放入按鈕的click事件處理程序中,而不是Page_Load。

protected void Button1_Click(object sender, EventArgs e) 
    { 
     lblResult.Text = grid.Rows.Count.ToString(); 
    } 

其中Button1_Click將是您按鈕的單擊事件的事件處理程序。

+0

不需要回傳更新嗎?如果是這樣,他可能需要viewstate或session變量來保存它,否? – nycdan 2011-04-28 01:46:51

+0

我應用了你提供的代碼......但同樣的問題發生:( – 2011-04-28 01:48:05

+0

任何我可以直接在asp:GridView下編寫代碼的方法? – 2011-04-28 01:52:11