Настройка тулбара(кнопка Save)

Обсуждение Stimulsoft Reports.NET
Ответить
AlexI
Сообщения: 18
Зарегистрирован: 29 май 2008, 13:55
Откуда: Kiev

Настройка тулбара(кнопка Save)

Сообщение AlexI »

Настройка тулбара(кнопка Save)

Добрый день

При использовании StiViewerControl на тулбаре есть кнопка Save.
Тут предоставаляется возвожность сохранять отчет во множестве разных форматов(pdf, rtf, htm и т.д.).
Мне необходимо оставить возможность сохранения только в pdf и rtf.
Я сделал это так

var saveItem = this.stiViewerControl1.ToolBar.Items["tbSave"];

List itemsToDelete = new List();

for(int i = 0; i < saveItem.SubItems.Count; i++)
{
if(i != 1 && i != 6) // export to pdf ant to rtf
{
itemsToDelete.Add(saveItem.SubItems);
}
}

saveItem.SubItems.RemoveRange(itemsToDelete.ToArray());



Правильное ли это решение?
Всегда ли индексы для экспорта в pdf и rtf будут 1 и 6?

Порекомендуйте другое решение п-та.
Edward
Сообщения: 930
Зарегистрирован: 09 июн 2006, 12:23

Настройка тулбара(кнопка Save)

Сообщение Edward »

Здравствуйте, Alex.

Для того, чтобы работало универсально, используйте, пожалуйста, следующий подход:

Код: Выделить всё

using Stimulsoft.Report.Render;
using Stimulsoft.Report;
using Stimulsoft.Base.Services;
using Stimulsoft.Report.Export;

StiConfig.Load();
StiServiceContainer services =
StiConfig.Services.GetServices(typeof(StiExportService));
foreach (StiService service in services)
{
    if (service is StiBmpExportService) service.ServiceEnabled = false;
    if (service is StiCsvExportService) service.ServiceEnabled = false;
    if (service is StiEmfExportService) service.ServiceEnabled = false;
    if (service is StiGifExportService) service.ServiceEnabled = false;
    if (service is StiHtmlExportService) service.ServiceEnabled = false;
    if (service is StiJpegExportService) service.ServiceEnabled = false;
    if (service is StiPdfExportService) service.ServiceEnabled = false;
    if (service is StiRtfExportService) service.ServiceEnabled = false;
    if (service is StiTiffExportService) service.ServiceEnabled = false;
    if (service is StiTxtExportService) service.ServiceEnabled = false;
    if (service is StiXmlExportService) service.ServiceEnabled = false;
}
StiConfig.Save();

Спасибо.
Ответить