2011-10-04 55 views
2

新行我想要做的事很簡單,我似乎無法找到EnableClientAddRow屬性,所以我可以將它設置爲true。我在Web表單上有一個標準的GridView控件。我想要一個按鈕出現在Web窗體上。當用戶點擊按鈕時,一個空行會被添加到GridView UI中,這樣用戶就可以在相應的字段中輸入數據。該行當然會在其中一列中有一個「保存」按鈕。在ASP.NET GridView控件

我知道這個功能必須在GridView的地方,我只是無法找到它。我確實發現了一些嘗試手動實現這一點的奇怪黑客。我對腳註操作或綁定技巧不感興趣,只是標準的添加行方法。

編輯: 看來GridView控件不支持添加行作爲第一順序操作。這似乎是一個嚴重的設計缺陷。

回答

1

我通常到基礎數據源中添加新記錄的「添加記錄」按鈕點擊動作的一部分。然後我重新綁定視圖以顯示空行。

新的記錄是通常一個DataRow如果將GridView綁定到一個DataTable,或者如果在GridView一個對象被綁定到特定類型的集合。不知道這是否是你認爲是你的問題的綁定技巧,但它運作良好,並且很容易實現。

編輯 - 更詳細的描述過程: 將行添加到數據源,將EditItemIndex設置爲新添加的行以使行進入編輯模式,然後將數據源綁定到GridView。您的EditItemTemplate將包含一個取消和一個保存按鈕。 Cancel會將GridView重新綁定到基礎數據源,而沒有空行,並將EditItemIndex設置爲-1,從而從GridView中刪除該行。

+0

這聽起來像它可能工作,但是我覺得更多的細節將是有益的。簡單地向數據源添加一個空行來顯示帶有添加按鈕的可編輯行? – izzy

+0

修改了更多的細節,讓我知道你是否有任何問題。 –

+0

所以有了這些額外的信息,我發現這是對GridView缺陷更有效的破解。感謝您抽出時間來擴大您的答案,這真的幫了我很大的忙。 – izzy

0

如果添加一個新行到數據源,即使該行已空值,並且您數據綁定數據源到GridView,它應該顯示爲可編輯的行就像任何其他的行。