Gridcontrol en c# devexpress agrega un problema de fila
1) Arrastre un GridControl y dos botones a Form1
2) Código de fondo usando?System;
usando?System.Collections.Generic
usando?System.Linq;
usando?System.Windows.Forms;
espacio de nombres?WindowsFormsApplication1
{
public?partial?class?Form1?:?Form
{
Lista
int?studentId?=? /p>
public?Form1()
{
InitializeComponent();
button1.Text?=?"Agregar nueva línea ";
button2.Text?=?"Eliminar filas seleccionadas";
BuildDataSource();
}
// Preparar la fuente de datos para gridcontrol1
privado?void?BuildDataSource()
{
studentList?=?new?List
StudentList.Add(new?Student(studentId++) {?Name?=?"Zhang San",?Course?=?"Mathematics",?Score?=?100?});
studentList.Add (nuevo?Estudiante(estudianteId++) {?Nombre?=?"李思",?Curso?=?"Matemáticas",?Puntuación?=?90?});
Agregar(nuevo? Estudiante(studentId++) {?Nombre?=?"王五",?Curso?=?"Matemáticas",?Puntuación?=?91?});
//¡Enlazar!
gridControl1.DataSource?=?studentList;
}
//Agregar fila
privado?void?button1_Click(objeto?remitente ,?EventArgs?e)
{
//Agregar filas en realidad agrega nuevos elementos a la fuente de datos (colección List
Student?stu ?=?nuevo?Estudiante(studentId++)?
{?Nombre?=?Qian Qi",?Curso?=?"Idioma extranjero",?Puntuación?=?34?};
studentList.Add(stu);
//Después de agregar una nueva fila a la fuente de datos, la nueva fila se agregará automáticamente al GridControl
gridControl1.RefreshDataSource () ;
}
//Eliminar fila
privado?void?button2_Click(object?sender,?EventArgs?e)
{
//Obtener todas las filas seleccionadas
int[]?rowIds?=?gridView1.GetSelectedRows();
if?(rowIds.Length? = =?0)?retirar
urn;
//Eliminar
foreach?(int?rowId?in?rowIds)
{
int?stuId?= ?(int)gridView1.GetRowCellValue(rowIds[0],?"Id");
Estudiante?stu?=?studentList.First(s?=>?s.Id?==?stuId) ;
studentList.Remove(stu);
}
//Después de eliminar una fila de la fuente de datos, la fila correspondiente se eliminará automáticamente de la GridControl p>
gridControl1.RefreshDataSource();
}
}
//----------- -- --------------------------
//Clase de rendimiento del estudiante
¿clase?Estudiante p>
{
público?Estudiante(int?id)
{
Id?=?id;
}
//Número de estudiante
public?int?Id?{?get;?private?set;?}
//Nombre
¿cadena pública?Nombre?{?get;?set;?}
//Curso
¿cadena pública?Curso?{?get;?set;? }
//Puntuación
¿pública?float?Puntuación?{?get;?set;?}
}
}
3) Las filas se pueden modificar directamente en GridControl sin programación adicional (a menos que desee verificar la validez de los datos de entrada)
------
Resumen: Agregar, eliminar y modificar Devexpress GridControl es en realidad agregar, eliminar y modificar la fuente de datos (recopilación de datos). En otras palabras: las modificaciones en la fuente de datos se "reflejarán" en los controles de la interfaz.