Do not forget that we are in an object-oriented language. I think you need to make your control by inheriting from BoundField and GridView objects. You can override the GridView CreateColumns function to use your new BoundField object instead of the default value.
Here's how I created a multi-column TreeView from a GridView, see here .
BoundFiled , , New, InitializeDataCell, OnDataBindField, ExtractValuesFromCell . , :
Protected Overrides Sub InitializeDataCell(ByVal cell As
System.Web.UI.WebControls.DataControlFieldCell,
ByVal rowState As System.Web.UI.WebControls.DataControlRowState)
... ect...
AddHandler cell.DataBinding, AddressOf OnDataBindField
End Sub
GridView , , , . OnInit, InitializeRow, PerformDataBinding, OnPreRender, OnSorting, UpdateRow, InitializeDataCell .. , .
, . GridView .
