Ridimensionare colonne di un DataGrid in base alla lunghezza delle str...

mercoledì 02 luglio 2008 - 12.13

Luke84 Profilo | Newbie

Salve a tutti, è la prima volta che scrivo quindi mi scuso in caso di errori,
Ho un problema, sto usando vb.net 2005 con compact frameworks,
vorrei riuscire a far si che le colonne del mio dataGrid si dimensionino automaticamente
a seconda della massima lunghezza del contenuto delle celle di quella colonna.

Spero di essere stato abbastanza chiaro

Vi ringrazio anticipatamente per la risposta


The Luke 84

aiedail92 Profilo | Expert

Ciao

Prova a vedere se per le colonne c'è la proprietà AutoSizeMode, e se c'è impostala su AllCells o DisplayedCells

Luca

Luke84 Profilo | Newbie

Ciao,
no purtroppo con delle DataGridTextBoxColumn sul compact frameworks posso fare ben poco,
posso mettere la larghezza ma niente di più.
E' possibile fare un ciclo per scorrere tutte le celle della colonna, individuare la stringa più lunga e di conseguenza settare la larghezza di quella colonna?
E se si come?

Grazie
The Luke 84

aiedail92 Profilo | Expert

Questa:

http://msdn.microsoft.com/it-it/library/system.windows.forms.datagrid(VS.80).aspx

è la pagina MSDN dove si parla del DataGrid. C'è un esempio dove fa vedere come aggiungere elementi alla griglia

Dopo aver letto l'esempio, un metodo di procedere (molto rozzo) che mi è venuto in mente è questo:

Dim tuoDataGrid As DataGrid Dim tuoDataSet As DataSet = tuoDataGrid.DataSource Dim tuoDataTable As DataTable = tuoDataSet.Tables(0) Dim lunghezzeMax(tuoDataGrid.TableStyles(0).GridColumnStyles.Count - 1) As Integer For Each row As DataRow In tuoDataTable.Rows 'codice per ottenere il testo e determinare 'le lunghezze massime di ogni colonna Next For i As Integer = 0 To tuoDataGrid.TableStyles(0).GridColumnStyles.Count - 1 tuoDataGrid.TableStyles(0).GridColumnStyles(i).Width = lunghezzeMax(i) Next

Personalmente non l'ho provato, quindi fammi sapere se c'è qualcosa che non va...

Luca

Defkon1 Profilo | Newbie

Non devi intervenire sulle singole DataGridTextBoxColumn, ma direttamente sul controllo DataGrid e impostare l'autosize...
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5