Mon entete de datagrid n'accepte pas d'etre redimensionné (Aucun message d'erreu

opac44 Messages postés 2 Date d'inscription lundi 20 juin 2005 Statut Membre Dernière intervention 19 décembre 2005 - 19 déc. 2005 à 15:33
opac44 Messages postés 2 Date d'inscription lundi 20 juin 2005 Statut Membre Dernière intervention 19 décembre 2005 - 19 déc. 2005 à 16:20
bonjour a toutes et tous
Voilà c'est la première fois que je me sert du forum et je commence depuis 1 mois sur VB net.
J'ai le problème suivant:
Je souhaite mettre mon entete de colonne sur plusieurs lignes ( pour une question esthetique) mais voilà lorsque je met rowheaderwidth=50 par exemple cela n'affecte en rien l'affcichage.

Voici le code associé :


Protected
Overrides
Sub OnLoad(
ByVal e
As System.EventArgs)



Dim BA
As
New Ouverturebase
'("SELECT * FROM ListeEquipt ORDER BY Libellé", "ListeEquipt")


BA.Base("SELECT * FROM BasePiece ORDER BY Libellé", "BasePiece")



'Mise en forme



Dim StyleTab
As
New DataGridTableStyle



Dim Police =
New Font("Arial", 10, FontStyle.Bold)



Dim Couleur =
New Drawing.Color


Couleur = Drawing.Color.FromArgb(255, 192, 0, 0)



With StyleTab


.MappingName = DS.Tables("Basepiece").TableName


.HeaderFont = Police


.HeaderForeColor = Couleur


.RowHeaderWidth() = 100
' cela ne fonctionne pas


.PreferredRowHeight = 30



End
With



'on créer les différents style pour chaque colonne



'colonne 0



Dim Colonne0
As
New DataGridTextBoxColumn



With Colonne0


.MappingName = DS.Tables("Basepiece").Columns.Item(0).ColumnName


.HeaderText = "N_TypePiece" & Chr(10)


.Width = 0



End
With



Dim Colonne1
As
New DataGridTextBoxColumn



With Colonne1


.MappingName = DS.Tables("Basepiece").Columns.Item(1).ColumnName


.HeaderText = "Libellé" & Chr(10)


.Width = 120



End
With



Dim Colonne2
As
New DataGridTextBoxColumn



With Colonne2


.MappingName = DS.Tables("Basepiece").Columns.Item(2).ColumnName


.HeaderText = "Coefficient " & Chr(10) & "selon Nature"
' passage de ligne par chr(10)


.Width = 120



End
With



Dim Colonne3
As
New DataGridTextBoxColumn



With Colonne3


.MappingName = DS.Tables("Basepiece").Columns.Item(3).ColumnName


.HeaderText = "Identifiant Type" & Chr(10) & "(1 est tout type)"


.Width = 150



End
With



'on efface les styles precedent


TabEqu.TableStyles.Clear()


StyleTab.GridColumnStyles.Clear()



'on les rajoute


StyleTab.GridColumnStyles.AddRange(
New DataGridColumnStyle() {Colonne0, Colonne1, Colonne2, Colonne3})


TabEqu.TableStyles.Add(StyleTab)



'on affiche dans la grille


TabEqu.DataSource = DS.Tables(0)


StyleTab.DataGrid.Refresh()



'fermeture connexion


BA.FermerBase()



'ComboBox1.Text = "Toto"


BA.Base("SELECT Libelle , N_TypeAnnexe FROM Annexe", "Annexe")


ComboBox1.DataSource = DS.Tables("Annexe")


ComboBox1.DisplayMember = "Libelle"


BA.FermerBase()

-----
je remercie toute bonne volonté pour la solution.
Merci et joyeux noel
A voir également:

2 réponses

TrafMaxime Messages postés 288 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 26 janvier 2012 1
19 déc. 2005 à 16:11
Tu peux essayer de charger ton dataset dans ton datagrid dès son remplissage :

ba.base("requete")
'en verite je n'ai pas vu la ligne exact ou le dataset est rempli dans ton code...
grid.datasource = ds.tables("x")
'puis :
grid.suspendlayout()

'enumeration de tes tablesstyles et textboxcolumn
' et à la fin, en lieu et place de refresh :

grid.resumelayout()

je garanti rien mais ca coute pas grand chose d'essyaer..
.Maytheforcebewithyou.Maxime.
0
opac44 Messages postés 2 Date d'inscription lundi 20 juin 2005 Statut Membre Dernière intervention 19 décembre 2005
19 déc. 2005 à 16:20
cela ne fonctionne pas...

Je viens d'essayer et c'est pareil ?

Si tu as d'autres idées tu es le bienvenue.

Encore merci
0
Rejoignez-nous