Вертикальное выравнивание текста для заголовка списка - PullRequest
0 голосов
/ 10 октября 2018

Как настроить вертикальное выравнивание столбца заголовка объекта списка для соответствия тексту в пределах границы ячейки (невозможно установить высоту формы заголовка автоматически)

Некоторые тексты не отображаются, как показано ниже; Listview screenshot

   ListView1.Columns.Add(items.InnerText, 90, HorizontalAlignment.Center)

добавление «strformat» в drawcolumnheader работает для горизонтального выравнивания, но не для вертикального

 Private Sub ListView3_DrawColumnHeader(sender As Object, e As DrawListViewColumnHeaderEventArgs) Handles ListView3.DrawColumnHeader
    Dim strFormat As New StringFormat()
    If e.Header.TextAlign = HorizontalAlignment.Center Then
        strFormat.LineAlignment = StringAlignment.Center
        strFormat.Alignment = StringAlignment.Center
    ElseIf e.Header.TextAlign = HorizontalAlignment.Right Then
        strFormat.LineAlignment = StringAlignment.Far
    End If

    e.DrawBackground()
    e.Graphics.FillRectangle(Brushes.SteelBlue, e.Bounds)
    Dim headerFont As New Font("Arial", 8, FontStyle.Bold)

    e.Graphics.DrawString(e.Header.Text, headerFont, Brushes.White, e.Bounds, strFormat)

End Sub

1 Ответ

0 голосов
/ 19 октября 2018

В соответствии с рекомендациями @Jimi, лучший способ справиться с выравниванием текста заголовка - использовать Datagridview вместо Listview.Datagridview имеет множество функций, как с заголовком текста, настройки строк и столбцов.

...