Решение в WPF для экспорта содержимого элемента управления ListBox, содержащего много элементов - PullRequest
0 голосов
/ 01 августа 2020

Я потратил некоторое время на создание инструмента GUI (с использованием WPF Core), который преобразует файл excel в красивое изображение отчета, которое будет отправлено через Outlook.

Сначала считываются строки из excel и установить как элементы ListBox (которые соответствуют строкам, прочитанным из excel). Затем RenderTargetBitmap используется для создания изображения на основе этого элемента управления ListBox (с разрешением 96 точек на дюйм).

Все это выглядит очень хорошо для небольшого количества строк, но это число неожиданно выросло. С увеличением количества строк высота изображения увеличивается. При вставке изображения в новое электронное письмо, чем оно выше, тем меньшую ширину получает Outlook по умолчанию. Я попытался установить его ширину на 15,00 дюймов (с пропорциональным увеличением высоты), и в некоторых случаях это срабатывало. Но я понял, что Outlook автоматически масштабирует изображения, когда они проходят определенный порог высоты (после отправки):

  • 1370x4951 -> 1420x836 (полностью деформированный);
  • 1370x4127 -> 1019x3072 (узкий вид в области чтения электронной почты Outlook (занимает половину ее ширины), но соотношение сохраняется);
  • 1370x2735 - > 1440x2875 (с учетом всей ширины панели предварительного просмотра Outlook с сохранением соотношения сторон, идеально).

Мне нужен другой подход для экспорта содержимого моего ListBox, или руководство о том, как Outlook обрабатывает изображения с различными разрешениями чтобы я мог каким-то образом взломать его, чтобы он отображал то, что мне нужно.

Есть идеи, предложения?

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