2011-12-23 3 views
0

Я написал хранимую процедуру, и я хочу показать результат в gridview (ASPxGridView от DevExpress, но должен быть таким же, как GridView).Показать данные в GridView

Я получаю datatable, это прекрасно, но когда я пытаюсь передать i в GridView, ничего не происходит.

Есть ли что-нибудь еще, что я должен делать, кроме этого:

ASPxGridView1.DataSource = SP1; 
ASPxGridView1.DataBind(); 

SP1 является DataTable.

+0

вы пытались AutoGenerateColumns = правда? Кроме того, в каком событии страницы вы это делаете? у вас есть этот код в событии Page_Load. – Akhil

+0

укажите дополнительный код и соответствующий eventHandler, где вы вызываете .DataSource = SP1 и .DataBind(); – MethodMan

+0

Да, попробовал загрузку страницы, а теперь с автогенератором true, еще ничего. –

ответ

2

Убедитесь, что Объект DataTable «SP1» содержит DataRo WS:

int rowCount = (SP1 as DataTable).Rows.Count; 

Кроме того, проверьте следующее KB статьи в базе DX Поддержка:

Почему может подкачки (сортировка, группировка, фильтрация) не работает в ASPxGridView?

http://www.devexpress.com/Support/Center/kb/p/K18183.aspx

и следующий код Центральный пример:

Bind сетки к DataTable с помощью кода

http://www.devexpress.com/Support/Center/e/E168.aspx

0

Это все, что вам нужно. Если вы не видите никаких данных, либо потому, что ваш datatable пуст, либо у вас есть другая ошибка где-то еще.

0

Ваш определенная пользователем функция

private void GridLoad() 
{ 
    ASPxGridView1.DataSource = SP1; 
    ASPxGridView1.DataBind(); 
} 

Вызов этой функции в вашем Page_Load случае

GridLoad(); 

Если вы все еще не видите сетку, сопоставить SP1 к Session переменной, а затем назовите это так:

  1. Привяжитек Session переменной

    Session["myDatatable"]=SP1; 
    
  2. Выпуск этой функции на Page_Load:

    GridLoad(); 
    

Ваш определяемые пользователем функции (за пределами Page_Load)

private void GridLoad() 
{ 
    if(Session["myDatatable"]==null) 
    { 
     ASPxGridView1.DataSource = SP1; 
     ASPxGridView1.DataBind(); 
    } 
    else 
    { 
     ASPxGridView1.DataSource = (DataTable)Session["myDatatable"]; 
     ASPxGridView1.DataBind(); 
    } 
}