2011-06-20 3 views
0

Je ne peux pas afficher les jeux de résultats de ma requête dans la vue de données. Lorsque je parcours le code, je peux voir les données dans la table de l'adaptateur de données et la source de liaison, mais cela ne s'affichera pas dans la grille? Quelqu'un peut-il me dire ce que je manque?Impossible d'afficher le jeu de résultats dans Win Form DatagridView

{ 
    SqlConnection conn = new SqlConnection ("my conn string"); 

    //open 
    conn.Open(); 

    ////pass the conn to command object 
    string query = "select * from main (nolock) where platter = 'first' and uk_5 in (" + List + ")"; 

    //create adapter to get data  
    SqlDataAdapter dAdapter = new SqlDataAdapter(query, conn); 

    // Get data set instance 
    DataSet dTable = new DataSet(); 

    // Fill data set 
    dAdapter.Fill(dTable); 

    //binding source to the data set 
    BindingSource bSource = new BindingSource(); 
    bSource.DataSource = dTable; 

    //displaying in datagridview 
    DataGridView dgView = new DataGridView(); 
    dgView.AutoGenerateColumns = true; 
    dgView.DataSource = bSource; 

    //close 
    conn.Close(); 
} 

Répondre

1

Vous n'êtes pas ajouter DataGridView que vous créez par programme à toute forme, de sorte qu'il ne sera pas affichée sur votre formulaire. Ajoutez ce code après vous liez votre BindingSource à votre DataGridView:

Controls.Add(dgView); 

Notez que DataGridView ajouté à une forme de cette manière sera positionné et dimensionné en utilisant les valeurs par défaut que vous ne voulez probablement pas.

Vous pouvez créer DataGridView dans le concepteur de formulaire ou définir ces valeurs par programmation: (exemple: dgView.Location = new System.Drawing.Point (100, 100);)

+0

J'ai essayé de faire everyting dans le concepteur , mais ma chaîne ne peut gérer qu'un seul 'numéro'. Dans les propriétés du constructeur de requêtes/Query Designer/Query Parameter List/@ mystring (nvarchar (50)). Je ne peux pas changer le type. J'ai essayé de le lancer et de le convertir, mais ça ne marche pas chez le designer. ma chaîne par exemple sera 1,2,3. la requête ne traitera qu'une seule valeur, elle ne verra pas 1,2,3 comme une seule chaîne (bug peut-être vs2010). Donc j'essaye de le faire juste en le codant. Mon instruction sql In fonctionne très bien, mais même après avoir ajouté votre ligne (merci!), Cela n'a toujours pas fonctionné. –

Questions connexes