2013-09-07 3 views
0

У меня есть этот класс:DataGridView данные

public class mobileSimple 
{ 
    public DataGridView mobileData { get; set; } 

    public DataGridView getMobileData() 
    { 
     return this.mobileData; 
    } 

    public void addMobileData(DataTable dt) 
    { 
     if (mobileData == null) 
     { 
      this.mobileData = new DataGridView(); 
     } 
     this.mobileData.DataSource = dt; 
    } 
} 

И у меня есть этот метод в форме:

private void getMobileData2() 
{ 
    mobileSimple mobile = null; 

    string query = mobileQueryProvider.getMobileSimple(); 

    sqlConnect connect = new sqlConnect(); 
    DataTable mobileSimpleDataTable = connect.getBD(query); 

    if (mobileSimpleDataTable.Rows.Count > 0) 
    { 
     mobile = new mobileSimple(); 
     mobile.addMobileData(mobileSimpleDataTable); 
    } 
    gvMobile.DataSource = mobile.getMobileData(); 
} 

Может кто-то пожалуйста, объясните мне, что я делаю не так, пожалуйста? DataGridView должен быть заполнен ... Я проверил запрос, и я получаю 2 строки.

спасибо.

+0

Вы уверены, что 'query' должен возвращать более 2 строк? –

+0

@OndrejJanacek запрос возвращается в данный момент 2 строки .. но также может возвращать 1 или 1000 ... – Nuno

+0

@Chris У меня есть ручка загрузки, которая вызывает этот метод ... – Nuno

ответ

1

Немного больше исследований, и я нашел ответ.

В конце метода:

gvMobile.DataSource = mobile.getMobileData(); 

мне не хватало:

gvMobile.DataSource = mobile.getMobileData().DataSource; 

Спасибо за помощь до сих пор.

Смежные вопросы