2009-06-24 28 views

Respuesta

40

hay HeaderText propiedad de objeto columna, puede encontrar la columna y establecer su HeaderText después de inicializar la cuadrícula o hacerlo en Windows forma diseñador a través de diseñador para DataGrid.

public Form1() 
    { 
     InitializeComponent(); 

     grid.Columns[0].HeaderText = "First Column"; 
     //.............. 
    } 

Más detalles son here en MSDN. Más detalles acerca de DataGrid son here.

+0

¿Cómo se logra lo mismo sin llamar al evento cellvaluechanged? –

+0

Bueno, ha pasado un tiempo desde que usé esto, pero creo que si lo haces a través del diseñador (si sabes de antemano cuál es el valor de la columna) no deberías molestar en disparar el evento. O puede establecer un marcador como 'settingHeader = true;' y luego verificar esto en el manejador 'callvaluechanged' para omitir cualquier acción. – TheVillageIdiot

5
grid.Columns[0].HeaderText 

o

grid.Columns["columnname"].HeaderText 
44

Para información, si se va a enlazar a una clase, puede hacer esto en su tipo a través de DisplayNameAttribute:

[DisplayName("Access key")] 
public string AccessKey { get {...} set {...} } 

Ahora la cabecera de texto en automóviles las columnas generadas serán "clave de acceso".

+0

Maravilloso, muchas gracias. – esylvestre

+0

¡Sí! Esa es la respuesta correcta –

2
Dg_View.Columns.Add("userid","User Id"); 
Dg_View.Columns[0].Width = 100; 

Dg_View.Columns.Add("username", "User name"); 
Dg_View.Columns[0].Width = 100; 
2
private void datagrid_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) 
{ 
    string test = this.datagrid.Columns[e.ColumnIndex].HeaderText; 
} 

Este código obtendrá el valor HeaderText.

0

campos Si trabaja con el diseñador de Visual Studio, es probable que haya definido para cada columna en la YourForm.Designer.cs archivo por ejemplo:

private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn1;  
private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2; 

Si se les da nombres útiles, se puede establecer el HeaderText fácilmente:

usefulNameForDataGridViewTextBoxColumn.HeaderText = "Useful Header Text"; 
Cuestiones relacionadas