En mi página ASP.NET, estoy usando un GridView para ver los datos (Artículos & sus precios). Actualmente, los usuarios pueden editar los datos (precios) en la cuadrícula fila por fila. (Haga clic en el enlace "Editar", cambie los valores y luego "Actualizar"). Esto es ROW por ROW. ¿Es posible abrir todas las filas en el modo Editar & con un solo botón (por ejemplo, Enviar) para actualizar todos los datos una vez?ASP GridView Todas las Filas En el Modo de Edición
Respuesta
Si no necesita leer solo el modo, en ese caso puede colocar cuadros de entrada (cuadro de texto, lista desplegable, etc.) en la sección ItemTEmplate
y vincularlos con los datos existentes.
A continuación, coloque un botón de envío en la parte superior/inferior del evento GridView y maneje el botón Click
y recorra los datos del elemento GridView
y guarde toda la base de datos.
Voy a publicar el bloque de código si es necesario. Gracias por tu tiempo.
Y tendrá un mejor control sobre eso haciendo uso de listview en lugar de gridview.
Mi práctica recomendada es usar listview y el control de usuario web personalizado para este tipo de problemas.
Si completa su lista de lista con su control de usuario, será fácil administrar su método de guardado, solo tiene que repetir los elementos de la lista, encontrar el control y llamar a su método Save para cada artículo.
Sé que esta pregunta ya ha sido contestada, pero aquí es el código de bucle a través del GridView la obtención de datos y almacenarlo en la Base de Datos:
Uso de bibliotecas:
- utilizando System.Data ;
- usando System.Data.SqlClient;
- usando System.Web.Configuration;
- usando System.Data.Odbc;
código subyacente:
// 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();
}
}
Por supuesto, usted tiene que ajustar el código a su caso particular, pero es muy fácil. En este código tiene el ejemplo para obtener valores para otro objeto como labes, textbox y dropdownlist en gridview.
Sufrí mucho para ejecutar este código (no soy buena programación) pero estoy feliz de ayudar.
NOTA: Para contar las columnas de la vista de cuadrícula debe comenzar en cero. NOTA 2: Lo siento por mi mal inglés por cierto ... No es mi lenguaje natural.
- 1. Edición de filas de Gridview: vinculación dinámica a DropDownList
- 2. Editar todas las filas para una columna en un GridView
- 3. DataGridView: Aplicar una edición a todas las filas seleccionadas
- 4. Poner una fila gridview en modo de edición programáticamente
- 5. ¿Cómo seleccionar filas mientras está en modo de edición?
- 6. Cómo deshabilitar las filas de gridview border
- 7. Gridview deshabilitar edición en 1 columna asp.net
- 8. LINQ: busque todas las casillas marcadas en un GridView
- 9. Haga clic en cualquier lugar en una fila de GridView para ingresar al modo de edición
- 10. sqlalchemy, seleccione todas las filas
- 11. Obtenga todas las filas editadas en jqgrid
- 12. devolver todas las filas duplicadas
- 13. Obtenga los índices de las filas seleccionadas en GridView
- 14. Borrar todas las filas en la tabla
- 15. ¿Cómo mostrar todas las filas en jqGrid?
- 16. UITableView, interceptando el modo de edición
- 17. asp: textbox GridView siempre devuelven valor en blanco
- 18. cómo borrar todas las filas de UITableView
- 19. Java: Eliminar todas las filas de DefaultTableModel
- 20. Salir del modo de edición
- 21. Seleccionar una UITableViewCell en el modo de edición
- 22. Cómo detectar el modo de edición en el iPhone UITableView
- 23. Seleccionar fila mientras UITableView está en modo de edición
- 24. filas que muestran múltiples veces en GridView
- 25. combinación izquierda no devolver todas las filas
- 26. Obtener todas las filas creadas hoy
- 27. función exec no devuelve todas las filas
- 28. actualizar una columna para todas las filas
- 29. Cómo vaciar todas las filas de todas las tablas en mysql (en sql)
- 30. ¿Webpart está en modo de edición?
Estoy teniendo el mismo problema para mi gridview. ¿Es posible que publique el código para el evento de clic de botón? – developthestars