Question
Form & DataGridView
- steph_d
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 65
- Remerciements reçus 0
il y a 17 ans 3 mois #3432
par steph_d
@+ Steph
Form & DataGridView a été créé par steph_d
Bonjour à tous
Je récupère des données via odbc et je veux les afficher dans une form, pour cela j'utilise un datagridview. Ca fonctionne bien tout s'affiche sauf que je ne voudrai autoriser qu'une seule colonne en modification. Là ça gâte.
Apparement le DataGridView n'est \"remplie\" qu'à l'affichage de la form et pas avant.
Le code[code:1]
$connection = New-Object 'System.data.odbc.odbcconnection'
$commande = New-Object system.data.odbc.odbccommand
$commande.connection = $connection
$connection.connectionString = 'DSN=BATIGEXPO;UID=;PWD=;'
$connection.open()
$commande.CommandText = \"SELECT CodeElem,Libelle,Qte,Type,Info,PVNet,NumLig,Temps,Type FROM DevisLigne WHERE DevisLigne.Code='00013954' ORDER BY NumLig\"
$DataAdapter = new-object System.Data.odbc.odbcDataAdapter($commande)
$DataSet = new-object System.Data.DataSet
$DataAdapter.Fill($DataSet)
$table = $DataSet.Tables[0]
$MaGrid = New-Object System.Windows.Forms.DataGridView
$MaGrid.Dock = [System.Windows.Forms.DockStyle]::Fill #Ajuster Ó la taille de la grid
$MaGrid.DataSource = $table
$form = new-object Windows.forms.form
$form.text = 'Saisir une requete SQL'
$form.size = new-object system.drawing.size @(360,280)
$form.controls.add($MaGrid)
$form.showdialog()
[/code:1]
Avant le \"showdialog()\"
Si je tapottes $MaGrid.DataSource, je retouve bien mes données, si je tapottes $MaGrid.ColumnCount j'ai 0
Après avoir fait \"show dialog()\", $MaGrid.ColumnCount me renvoie bien le bon nombre de colonnes !!!
Le but est ensuite de faire ça [code:1]
ForEach ($column in $MaGrid.Columns)
{
If ($column.Name -eq 'Qte')
{ $column.ReadOnly = $False }
Else
{ $column.ReadOnly = $True }
}
[/code:1]
J'ai regardé l'aide en ligne mais je trouve rien de sexy pour m'aider.
Si vous avez des idées.
Je récupère des données via odbc et je veux les afficher dans une form, pour cela j'utilise un datagridview. Ca fonctionne bien tout s'affiche sauf que je ne voudrai autoriser qu'une seule colonne en modification. Là ça gâte.
Apparement le DataGridView n'est \"remplie\" qu'à l'affichage de la form et pas avant.
Le code[code:1]
$connection = New-Object 'System.data.odbc.odbcconnection'
$commande = New-Object system.data.odbc.odbccommand
$commande.connection = $connection
$connection.connectionString = 'DSN=BATIGEXPO;UID=;PWD=;'
$connection.open()
$commande.CommandText = \"SELECT CodeElem,Libelle,Qte,Type,Info,PVNet,NumLig,Temps,Type FROM DevisLigne WHERE DevisLigne.Code='00013954' ORDER BY NumLig\"
$DataAdapter = new-object System.Data.odbc.odbcDataAdapter($commande)
$DataSet = new-object System.Data.DataSet
$DataAdapter.Fill($DataSet)
$table = $DataSet.Tables[0]
$MaGrid = New-Object System.Windows.Forms.DataGridView
$MaGrid.Dock = [System.Windows.Forms.DockStyle]::Fill #Ajuster Ó la taille de la grid
$MaGrid.DataSource = $table
$form = new-object Windows.forms.form
$form.text = 'Saisir une requete SQL'
$form.size = new-object system.drawing.size @(360,280)
$form.controls.add($MaGrid)
$form.showdialog()
[/code:1]
Avant le \"showdialog()\"
Si je tapottes $MaGrid.DataSource, je retouve bien mes données, si je tapottes $MaGrid.ColumnCount j'ai 0
Après avoir fait \"show dialog()\", $MaGrid.ColumnCount me renvoie bien le bon nombre de colonnes !!!
Le but est ensuite de faire ça [code:1]
ForEach ($column in $MaGrid.Columns)
{
If ($column.Name -eq 'Qte')
{ $column.ReadOnly = $False }
Else
{ $column.ReadOnly = $True }
}
[/code:1]
J'ai regardé l'aide en ligne mais je trouve rien de sexy pour m'aider.
Si vous avez des idées.
@+ Steph
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 17 ans 3 mois #3438
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Form & DataGridView
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.081 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Form & DataGridView