2009-02-16 30 views
6

sự hiểu biết của tôi về thứ tự của các sự kiện trang này là:ASP.NET - Nút sự kiện nhấp chuột đưa ra sau khi GridView ràng buộc

Trang: Load

điều khiển: DataBind (đối với một GridView hoặc bất cứ điều gì)

điều khiển: Nạp

điều khiển: được Nhấp chuột (cho một Button)

Page: PreRender

điều khiển: PreRender

(Có rất nhiều người khác - nhưng đó là những cái Tôi quan tâm đến)

Điều quan trọng cần lưu ý ở đây là sự kiện click của nút đến sau sự kiện liên kết của GridView. Nếu nút gây ra thay đổi đối với dữ liệu, GridView sẽ hiển thị dữ liệu cũ. Tôi có thể rebind sự kiểm soát trong sự kiện PreRender, nhưng điều đó có vẻ hoàn toàn xấu xí.

Đây phải là mẫu rất phổ biến (nút cập nhật dữ liệu). Làm thế nào để tôi đặt điều này lại với nhau để GridView liên kết với dữ liệu sau khi nhấp chuột vào nút thay đổi nó?

Trả lời

2

Câu trả lời là trong sự kiện Nhấp nút, sau khi dữ liệu đã được thay đổi, hãy gọi DataBind() trên trang để gây ra GridView (và bất kỳ thứ gì khác cần) để rebind. Tôi đã không nhận ra bạn có thể làm điều đó.

Cảm ơn bạn Ocdecio & Mufasa - Tôi đánh dấu câu trả lời của bạn là hữu ích, nhưng tôi chưa có đại diện.

+0

Tôi chưa có đại diện, không được so sánh với ocdecio! :) –

0

Lý do duy nhất sự kiện nhấp nút xuất hiện sau khi liên kết GridView là do bạn đã lập trình trang của mình để thực hiện điều đó. Tôi không thấy bất kỳ vấn đề nào trong việc ràng buộc điều khiển trong sự kiện PreRender, trên thực tế đó là cách duy nhất để thực hiện hành động sau một sự kiện điều khiển (chẳng hạn như nút onclick).

1

ASP.NET, theo mặc định, rất nhiều ràng buộc và khôi phục. Việc khôi phục sau sự kiện nhấp chuột là bình thường.

Các vấn đề liên quan