Red de conocimiento informático - Computadora portátil - Gridcontrol en c# devexpress agrega un problema de fila

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?studentList;?

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

gridControl1.RefreshDataSource();

}

}

//----------- -- --------------------------

//Clase de rendimiento del estudiante

¿clase?Estudiante

{

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.