2009-06-26 6 views
6

Si verificano problemi nel tentativo di regolare la larghezza di una colonna di un datagrid. Ho usato la risposta postata here, ma non riesco a risolverlo.Larghezza colonna di un DataGrid in un'applicazione Windows Mobile

Sto utilizzando un elenco di oggetti come origine dati. In questo semplice esempio, ho appena creato un'applicazione per smart device e appena aggiunto un datagrid. Quindi il mio codice è questo:

public Form1() 
    {    
     InitializeComponent(); 

     List<Prueba> lista = new List<Prueba>(); 
     lista.Add(new Prueba("uno", "dos")); 
     lista.Add(new Prueba("tres", "cuatro")); 

     dataGrid1.DataSource = lista; 
     DataGridTableStyle tableStyle = new DataGridTableStyle(); 
     tableStyle.MappingName = lista.GetType().ToString(); 
     DataGridTextBoxColumn tbcName = new DataGridTextBoxColumn(); 
     tbcName.Width = 4000; 
     tbcName.MappingName = "UNO"; 
     tbcName.HeaderText = "UNO"; 
     tableStyle.GridColumnStyles.Add(tbcName); 
     dataGrid1.TableStyles.Clear(); 
     dataGrid1.TableStyles.Add(tableStyle); 
    } 
} 

public class Prueba 
{ 
    public string UNO { get; set; } 
    public string DOS { get; set; } 

    public Prueba(string uno, string dos) 
    { 
     this.UNO = uno; 
     this.DOS = dos; 
    } 
} 

La larghezza rimane invariata. Hai un indizio? Grazie!

risposta

6

Modificare questa linea

tableStyle.MappingName = lista.GetType().ToString(); 

a

tableStyle.MappingName = lista.GetType().Name; 

Oh, e 4000 è un po 'grande per un cellulare, ma suppongo che è un errore di battitura.

+1

Ah grazie! Sì, funziona abbastanza bene. Sì, il 4000 era solo un valore basato sulla disperazione: P –