2009-06-25 5 views
2

У меня есть radgrid, который генерирует столбцы динамически на основе пользовательского ввода. После заполнения сетки пользователь имеет возможность экспортировать в excel или word. Однако, когда пользователь хочет сохранить форматирование страницы, данные не экспортируются. Но если пользователь выбирает игнорировать пейджинг, все работает нормально.RadGrid export to excel

Похоже, что если для свойства radgrid «AutoGenerateColumns» установлено значение false, а «IgnorePaging» также является ложным, данные не будут экспортироваться.

У кого-нибудь еще есть эта проблема или я чем-то смотрю?

Вот методы, которые настраивают и называют экспорт:

private void ConfigureReport(string strExportType) 
    { 
     switch (strExportType.ToLower()) 
     { 
      case "excel": 
       RadGrid1.ExportSettings.FileName = "RadGridExportToExcel"; 
       break; 

      case "word": 
       RadGrid1.ExportSettings.FileName = "RadGridExportToWord"; 
       break; 
     } 
     RadGrid1.ExportSettings.IgnorePaging = this.cbxPaging.Checked; 
     RadGrid1.ExportSettings.ExportOnlyData = this.cbxFormat.Checked; 
    } 

    private void btnExcel_Click(object sender, EventArgs e) 
    { 
     if (this.UserProcess.SearchResults != null &&  
      this.UserProcess.SearchResults.Count > 0) 
     { 
      ConfigureReport("excel"); 
      RadGrid1.MasterTableView.ExportToExcel(); 
     } 
     else 
     { 
      this.lblError.Text = AAILocalization.GetLocaleText("Error:NoResultExport"); 
     } 
    } 

Заранее спасибо за помощь :) Pat

P.S. Я исключил метод, который создает столбцы для смелости.

ответ

0

Здесь недостаточно информации, чтобы указать точную причину/решение, однако одно предложение (действительно, более обходное решение) заключается в том, чтобы всегда устанавливать IgnorePaging, когда пользователь экспортирует. Вот пример кода:

private void btnExcel_Click(object sender, EventArgs e) 
    { 
     if (this.UserProcess.SearchResults != null &&  
      this.UserProcess.SearchResults.Count > 0) 
     { 
      ConfigureReport("excel"); 
      RadGrid1.MasterTableView.AllowPaging = false; 
      RadGrid1.PageSize = RadGrid1.Items.Count + 1; 
      RadGrid1.MasterTableView.ExportToExcel(); 
     } 
     else 
     { 
      this.lblError.Text = AAILocalization.GetLocaleText("Error:NoResultExport"); 
     } 
    } 

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

  • Нет связанных вопросов^_^