Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как получить ColumnWidth ячейки Excel в пикселах?
|
|||
|---|---|---|---|
|
#18+
Привет! Кто-нибудь знает, как быстро и красиво получить ColumnWidth ячейки Excel в пикселах в C#? Range.ColumnWidth возвращает то ли в point-ах, то ли в ширинах символов... Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2004, 16:29 |
|
||
|
Как получить ColumnWidth ячейки Excel в пикселах?
|
|||
|---|---|---|---|
|
#18+
Ширина в пикселах зависит от разрешения графического контекста устройства, в котором отображается ячейка. Отображаться же она может одновременно в нескольких РАЗНЫХ графических контекстах РАЗНЫХ устройств. Какой из них тебе нужен? Когда определишься, смотри Graphics.PageUnit, Graphics.DpiX, Graphics.DpiY ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2004, 16:45 |
|
||
|
Как получить ColumnWidth ячейки Excel в пикселах?
|
|||
|---|---|---|---|
|
#18+
Спасибо, Roman, я посмотрел PageUnit... Не могли бы вы посоветовать стандартный сценарий действий в таком случае: имеются Width и Height (текстбокса) в координатах PageUnit.Display, приложение работает с Excel (посредством COM-оберток), необходимо задать ячейке размеры: Cells[1,1].ColumnWidth = ? Cells[1,1].RowHeight = ? Причем, в хэлпе по Excel написано: RowHeight Property Returns the height of all the rows in the range specified, measured in points . Returns Null if the rows in the specified range aren’t all the same height. Read/write Variant. ColumnWidth Property Returns or sets the width of all columns in the specified range. Read/write Variant. Remarks One unit of column width is equal to the width of one character in the Normal style. For proportional fonts, the width of the character 0 (zero) is used. Use the Width property to return the width of a column in points. (Но Width - read only) If all columns in the range have the same width, the ColumnWidth property returns the width. If columns in the range have different widths, this property returns Null. Заранее благодарен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2004, 08:54 |
|
||
|
Как получить ColumnWidth ячейки Excel в пикселах?
|
|||
|---|---|---|---|
|
#18+
Для высоты я нашел такое решение: private void setRowHeight(int row, int value) { Bitmap b = new Bitmap(1,1); Graphics g = Graphics.FromImage(b); g.PageUnit = GraphicsUnit.Point; Point[] pts = new Point[]{new Point(0, value)}; g.TransformPoints(CoordinateSpace.Page, CoordinateSpace.Device, pts); Cells(row, 1).RowHeight = pts[0].Y; } Может есть более красивые решения? И как быть с шириной, которая в Excel выражется через ширины символов? Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2004, 09:31 |
|
||
|
|

start [/forum/topic.php?fid=20&msg=32795184&tid=1437816]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
25ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 292ms |

| 0 / 0 |
