Pregunta

La creación de un objeto de negocio personalizado para deslizarse en un dataGridView funciona de maravilla ... excepto que no puedo pensar en una manera programática para establecer el orden de las columnas.

¿Tengo que agregarlos manualmente uno a uno de nuevo manualmente para obtener una clasificación más agradable o hay algún atributo secreto oculto que puedo usar?

¿Fue útil?

Solución

Cada dataGridViewColumn como una propiedad DisplayIndex que se puede aplicar en cualquier momento e incluso funciona con AutoGenerateColumns establecido en verdadero.

dataGridView1.Columns["colName"].DisplayIndex = 0;
dataGridView1.Columns["colAnotherColumn"].DisplayIndex = 1;

Otros consejos

Supongo que actualmente tienes AutoGenerateColumns configurado en true . La única forma que conozco de controlar el orden de las columnas es establecer AutoGenerateColumns en false y, como usted dijo, agregar las columnas manualmente.

EDIT:


Acabo de buscar en un vago recuerdo de otra forma de hacer esto y creo que es posible que desee buscar en la propiedad GridView del control ColumnsGenerator que toma un IAutoFieldGenerator objeto. Esta interfaz tiene un método llamado GenerateFields 'que toma un Control (la Grid ) y devuelve un ICollection `(de campos).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top