Trong trang ASP.NET của tôi, tôi đang sử dụng GridView để xem dữ liệu (Giá hàng & giá của chúng). Hiện tại, người dùng có thể chỉnh sửa dữ liệu (giá) trong hàng lưới theo hàng. (Click -> "Chỉnh sửa" liên kết, thay đổi các giá trị sau đó "Cập nhật"). Đây là ROW của ROW. Có thể mở tất cả các hàng trong chế độ Chỉnh sửa & sử dụng một nút đơn (ví dụ: Gửi) để cập nhật tất cả dữ liệu một lần không?ASP GridView Tất cả các hàng trong chế độ chỉnh sửa
Trả lời
Nếu bạn không cần chế độ chỉ đọc, trong trường hợp đó bạn có thể đặt hộp nhập liệu (hộp văn bản, danh sách thả xuống, v.v.) trong mục ItemTEmplate
và liên kết chúng với dữ liệu hiện có.
Tiếp theo, đặt nút gửi ở trên/dưới của GridView và nút xử lý Click
sự kiện và lặp qua dữ liệu mục GridView
và lưu tất cả cơ sở dữ liệu.
Tôi sẽ đăng khối mã nếu bạn cần. Cảm ơn vì đã dành thời gian cho tôi.
Và bạn sẽ có quyền kiểm soát tốt hơn về việc bạn thực hiện bằng cách sử dụng listview thay vì chế độ xem lưới.
Thực tiễn tốt nhất của tôi là sử dụng chế độ xem danh sách và kiểm soát người dùng web tùy chỉnh cho loại sự cố này.
Nếu bạn điền vào chế độ xem danh sách với điều khiển người dùng, bạn sẽ dễ dàng quản lý phương thức lưu, chỉ cần lặp lại trên các mục listview, tìm điều khiển và gọi phương thức Save() cho từng mục.
Tôi biết rằng câu hỏi này đã được trả lời nhưng đây là mã cho vòng lặp thông qua GridView nhận dữ liệu và lưu trữ nó trong cơ sở dữ liệu:
Sử dụng thư viện:
- sử dụng System.Data ;
- sử dụng System.Data.SqlClient;
- bằng System.Web.Configuration;
- sử dụng System.Data.Odbc;
Mã Đằng sau:
// this is a variable that have the Query or SQL Commands.
string DataBaseQuery = "UPDATE [table] SET [variable2] = @variable2, [variable3] = @variable3) WHERE [variable1] = @variable1";
//Click Event from a LinkButton.
protected void LinkButton1_Click(object sender, EventArgs e)
{
//"ConnectionString" its the string connection for your DataBase (often get from the WebConfig File or a DataSource element.
using (SqlConnection connection = new SqlConnection(ConnectionString))
{
//this is for open the database using the string connection.
connection.Open();
//this is the algorithm for going through the entire GridView.
for (int i = 0; i < GridView1.Rows.Count; i++)
{
//"DataBaseQuery" it's a string variable that have the Query or SQL Commands.
SqlCommand cmd = new SqlCommand(DataBaseQuery, conexion);
//this case it's for obtain the text variable of the first column of the gridview (in my case it was the ID of the register).
cmd.Parameters.AddWithValue("@variable1", ((Label)GridView1.Rows[i].Cells[0].FindControl("Label1")).Text.ToString());
//this case it's for obtain the selected value of a DropDownList that were in the 14 th column)
cmd.Parameters.AddWithValue("@variable2", ((DropDownList)GridView1.Rows[i].Cells[15].FindControl("DropDownlist2")).SelectedValue.ToString());
//this command it's for obtain the text of a textbox that is in the 15 th column of the gridview.
cmd.Parameters.AddWithValue("@variable3", ((TextBox)GridView1.Rows[i].Cells[16].FindControl("TextBox17")).Text.ToString());
cmd.ExecuteNonQuery();
}
//after going through all the gridview you have to close the connection to the DataBase.
connection.Close();
}
}
Tất nhiên bạn phải điều chỉnh mã để trường hợp cụ thể của bạn, nhưng nó rất dễ dàng. Trong đoạn mã này bạn có ví dụ để lấy các giá trị cho các đối tượng khác như labes, textbox và dropdownlist trong GridView.
Tôi phải chịu đựng rất nhiều thứ để chạy mã này (tôi không lập trình tốt) nhưng tôi rất sẵn lòng trợ giúp.
LƯU Ý: Để đếm các cột của chế độ xem lưới, bạn phải bắt đầu ở số không. NOTE2: Xin lỗi vì tiếng Anh xấu của tôi bằng cách này ... Đó không phải là ngôn ngữ tự nhiên của tôi.
- 1. Chỉnh sửa tất cả các hàng cho một cột trong GridView
- 2. Nhận tất cả các hàng đã chỉnh sửa trong jqgrid
- 3. Nhấp vào bất kỳ nơi nào trên hàng GridView để vào chế độ chỉnh sửa
- 4. Chỉnh sửa hàng Gridview - liên kết động với một DropDownList
- 5. Bật chế độ chỉnh sửa cho chỉ một hàng trong chế độ xem bảng
- 6. Chế độ Viper ở tất cả các chế độ
- 7. Đặt hàng chế độ xem lưới trong chế độ chỉnh sửa theo lập trình
- 8. Thoát Chế độ Chỉnh sửa
- 9. Chỉnh sửa UITableView lập trình hiển thị nút xóa trên TẤT CẢ các hàng
- 10. Cách chọn các hàng trong khi ở chế độ chỉnh sửa?
- 11. Xóa tất cả chế độ xem trẻ em khỏi chế độ xem
- 12. DataGridView: Áp dụng chỉnh sửa cho tất cả các hàng đã chọn
- 13. UITableView, chặn chế độ Chỉnh sửa
- 14. Thiết lập JQGrid để tất cả các hàng đều có thể chỉnh sửa được?
- 15. ComboBox trong DatagridView trong Chế độ Chỉnh sửa
- 16. Lựa chọn hàng trong khi UITableView đang ở chế độ chỉnh sửa
- 17. Đặt GestureDetector cho tất cả các chế độ xem con
- 18. Backbone.js - Xóa tất cả các chế độ xem phụ
- 19. DataGrid's CellEditingTemplate và lấy nét ở chế độ chỉnh sửa
- 20. Làm thế nào để kích hoạt chế độ flyspell trong các emacs cho tất cả các tệp và tất cả các chế độ chính?
- 21. Mật khẩu trong chỉnh sửa chế độ tramp Emacs
- 22. Hủy phân đoạn trong chế độ chỉnh sửa uitableview
- 23. Trình chỉnh sửa chế độ xem WYSIWYG trong 'Android'?
- 24. Không có chế độ chỉnh sửa nào trong Liferay portlet
- 25. Chọn một UITableViewCell ở chế độ Chỉnh sửa
- 26. Chế độ chỉnh sửa UITableView không hoạt động
- 27. Xóa tất cả các hàng trong bảng
- 28. Làm mới tất cả chế độ xem trong Android?
- 29. UITableView thêm/xóa các phần trong khi không ở chế độ chỉnh sửa?
- 30. Làm thế nào để kiểm soát kích thước của Gridview khi chế độ chỉnh sửa của nó và nó không?
Tôi gặp vấn đề tương tự đối với chế độ xem lưới của mình. Bạn có thể đăng mã cho sự kiện nhấp vào nút không? – developthestars