2016-03-29 10 views
0

Izgara kodunu aşağıdaki kodla birlikte saklı bir yordamla doldurmaya çalışıyorum ama ne oluyor ızgara görünümü hiçbir şey göstermiyor.C# gridview saklı yordam işleminin sonucunu göstermiyor sql

SqlConnection myConnectiona = new SqlConnection("user id=HOME-PC\\HOME;" + 
           "password=password;server=HOME-PC\\SQLEXPRESS;" + 
           "Trusted_Connection=yes;" + 
           "database=tabrem; " + 
           "connection timeout=30"); 

     SqlCommand pro = new SqlCommand("[dbo].[doctor]", myConnectiona); 

     pro.CommandType = CommandType.StoredProcedure; 

     SqlDataAdapter da = new SqlDataAdapter(pro); 

     DataTable dt = new DataTable(); 



    try 
    { 
       myConnectiona.Open(); 

     da.Fill(dt); 
     dataGridView1.DataSource = dt; 


    } 
    catch (Exception w) 
    { 
     throw; 
    } 
    finally 
    { 
     if (myConnectiona.State == ConnectionState.Open) 
      myConnectiona.Close(); 
    } 
+1

Belki 'Databind() 'komutunu kaçırıyor musunuz? –

+1

C# çok geniş, bu yüzden gridview. "System.Windows.Forms.DataGridView" kullandığınız gibi görünüyor, lütfen "use' DataBind "kullanmaktan kaçınmak için soru etiketini güncelleyin. –

+0

Şimdi konuyla ilgili. Bunu 'dt.Rows.Count> 0' ve 'dt.Columns.Count> 0' kontrol ettiniz mi? Ayrıca dataGridView1.AutoPopulateColumns '' true'? –

cevap

1

Eğer veri kaynağı ayarladıktan sonra:

dataGridView1.DataSource = dt; 
dataGridView1.DataBind(); 

Düzenleme:

bindingSource.DataSource = dt; 
dataGridView1.DataSource = bindingSource; 

https://msdn.microsoft.com/en-us/library/fbk67b6z%28v=vs.110%29.aspx

+0

Bu asp değil C# bu yüzden gerekli olmayan veri tabanı. –

+0

çalışmıyor ya –

+1

dataGridView1.AutoGenerateColumns = true? – cyi

0
: Bu durumda

, sen BindingSource kullanmak gerekirVeritabanını aşağıdaki şekilde gösterildiği gibi ızgara görünümüne bağlamanız gerekir:

dataGridView1.DataSource = dt; 
dataGridView1.Databind();