Imports Infragistics.Win
Imports Infragistics.Win.UltraWinListView
    Private Sub ultraListView1_ColumnResizing(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinListView.ColumnResizingEventArgs) Handles ultraListView1.ColumnResizing
        '	If the column about to be resized is the MainColumn, cancel
        '	the event to prevent the column from being resized.
        If (e.Column.GetType() Is GetType(UltraListViewMainColumn)) Then e.Cancel = True
    End Sub
    Private Sub ultraListView1_ColumnResized(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinListView.ColumnResizedEventArgs) Handles ultraListView1.ColumnResized
        Dim listView As UltraListView = CType(sender, UltraListView)
        '	Get a rectangle which describes the client area
        '	of the control, so we can determine the width
        '	minus the width of the vertical scrollbar, if
        '	one is present.
        Dim displayRect As Rectangle = listView.DisplayRectangle
        Dim clientWidth As Integer = displayRect.Width
        '	Subtract out the width of the MainColumn
        Dim mainColumnWidth As Integer = IIf(listView.MainColumn.Width > 0, listView.MainColumn.Width, 200)
        clientWidth -= mainColumnWidth
        '	Iterate the SubItemColumns collection to get the number of
        '	visible columns.
        Dim visibleByDefault As Boolean = listView.ViewSettingsDetails.SubItemColumnsVisibleByDefault
        Dim visibleColumnsCount As Integer = 0
        Dim subItemColumn As UltraListViewSubItemColumn
        For Each subItemColumn In listView.SubItemColumns
            If (subItemColumn.VisibleInDetailsView = DefaultableBoolean.True Or _
                (visibleByDefault AndAlso subItemColumn.VisibleInDetailsView = DefaultableBoolean.Default)) Then
                visibleColumnsCount += 1
            End If
        Next
        '	Iterate the SubItemColumns collection and set the width
        For Each subItemColumn In listView.SubItemColumns
            subItemColumn.Width = Math.Floor((clientWidth / visibleColumnsCount))
        Next
    End Sub