列表视图标题文本的垂直文本对齐

时间:2018-10-10 19:09:37

标签: vb.net listview textwrapping

如何设置列表视图对象的标题列的垂直对齐方式以适合单元格边框内的文本(无法自动设置标题表格的高度)

某些文本未显示如下; Listview screenshot

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

在drawcolumnheader中添加“ strformat”可用于水平对齐,而不能用于垂直

 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 :(得分:0)

按照@Jimi的建议,处理标题文本对齐的最佳方法是使用 Datagridview而不是Listview。 Datagridview具有许多功能,包括标题文本,行和列调整。