2016-03-02 2 views
0

Я пытаюсь инициализировать объект DataGridView. Все, что я сделал, это добавить объект на экран без изменения каких-либо свойств. У меня есть код, который запускается, когда пользователь выбирает панель, в которой он включен. Код выглядит следующим образом ...Почему в моем DataGridView ничего не отображается?

DataTable tbl = new DataTable(); 
string query = "SELECT viewfolder, status FROM Folders WHERE username = '" + Globals.usrName + "' ORDER BY viewfolder"; 

SqlConnection connect = new SqlConnection(@"Data Source=(LocalDB)\v11.0;" + 
    @"AttachDbFilename=C:\Development\C-Sharp\LockItUp\Lockitup.mdf;Integrated Security=True"); 

SqlCommand cmd = new SqlCommand(query, connect); 

connect.Open(); 
try 
{ 
    SqlDataAdapter dAdapt = new SqlDataAdapter(cmd); 
    dAdapt.Fill(tbl); 
} 
catch (Exception ex) 
{ 
    MessageBox.Show(ex.Message); 
    return; 
} 
connect.Close(); 

dataGridView1.DataSource = tbl; 

Так есть ли другой код, который я должен добавить или свойства, которые я должен установить, чтобы увидеть появляются данные по сетке? Спасибо за помощь.

+2

Может у возможность просматривать заголовки столбцов? Вы уверены, что запрос возвращает некоторые данные? потому что ваш код, похоже, в порядке. – Olivarsham

+0

Я даже не вижу заголовков столбцов. –

+0

Вам необходимо установить ['dataGridView1.AutoGenerateColumns = true;'] (https://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.autogeneratecolumns%28v=vs.110%29. aspx) или добавьте нужные столбцы в код. – TaW

ответ

0

Вы можете попробовать использовать этот код:

void FillData() 
{ 

    using (SqlConnection c = new SqlConnection(
    @"Data Source=(LocalDB)\v11.0;" + 
@"AttachDbFilename=C:\Development\C-Sharp\LockItUp\Lockitup.mdf;Integrated Security=True")) 
    { 
    c.Open(); 

      string query = "SELECT viewfolder, status FROM Folders WHERE username = '" + Globals.usrName + "' ORDER BY viewfolder"; 
    using (SqlDataAdapter a = new SqlDataAdapter(
     query , c)) 
    { 
     DataTable tbl = new DataTable(); 
     a.Fill(tbl); 
     dataGridView1.DataSource = tbl; 
    } 
    } 
} 
Смежные вопросы