Как показать изображения в отчете RDLC

у меня есть отчет RDLC и я хотел бы, чтобы один из столбцов в таблице этого отчета отображал изображения. Источником данных для моего отчета является класс, который имеет свойство Image типа System.Drawing.Image.

в моем отчете я перетащил элемент управления image в столбец и установил следующие свойства:

MIMEType:  image/png
Source:  Database
Value:  =Fields!Image.Value

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

Я бы очень признателен за любые предложения!

заранее спасибо: o)

2 ответов


Я не знаю, является ли это лучшим решением, но я получил его на работу. Похоже, проблема была в использовании системы.Рисунок.Изображение.

в моем классе я создал новое свойство ImageByte типа byte[]. Я не делал сеттера для ImageByte, но я сделал геттер, который делает следующее:

MemoryStream ms = new MemoryStream();
Image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
return ms.ToArray();

я обновил свой отчет, чтобы иметь =поля!ImageByte.Значение для значения, и теперь все работает так, как ожидалось :o)


во-первых, вы принимаете новую форму в своем проекте на Load event вы пишете эту строку ниже:

reportViewer1.LocalReport.EnableExternalImages = true; 

после этого возьмите reportViewer на этой странице и установите смарт-тег этого, выберите "Создать новый отчет" и возьмите элемент управления изображением на нем из ToolBox, установите его свойство

Source = External Value = file:\D:Images\Sunset.jpg 

Примечание: Изображение(Закат.jpg) сохранен в папке изображений на диске D. Вы изменили его согласно вашему требованию.