A незначительное улучшение с использованием имени столбца, ИМХО:
Private Sub GridView1_Init(sender As Object, e As System.EventArgs) Handles GridView1.Init
For Each dcf As DataControlField In GridView1.Columns
Select Case dcf.HeaderText.ToUpper
Case "CBSELECT"
dcf.Visible = Me.CheckBoxVisible
dcf.HeaderText = "<small>Select</small>"
End Select
Next
End Sub
Это позволяет контролировать несколько столбцов.Сначала я использую «техническое» имя столбца, соответствующее имени элемента управления внутри.На странице ASCX становится очевидным, что это контрольный столбец.Затем смените название по желанию для презентации.Если я подскажу странное имя на производстве, я знаю, что что-то пропустил.«ToUpper» позволяет избежать проблем с регистром.
Наконец, он запускается ОДНО раз в любом сообщении вместо захвата события во время создания строки.