I have created a wrapper control around the telerik RadGrid to be able to set some default settings and implement some of my own methods. Within my wrapper user control I added the property ShowEditButton and ShowDeleteButton which implement my own update / delete action. Once this property is set I programmatically add a GridButtonColumn which represents the update and/or delete button in the grid.
I add my custom action column with the following code:
| if (!IsPostBack){ | 
| GridButtonColumn col = new GridButtonColumn(); | 
| col.CommandName = col.Text = col.HeaderText = "Delete"; | 
| col.UniqueName = "DeleteColumn"; | 
| radDataGrid.Columns.Add(col); | 
| } | 
If I execute this code within de Load event of my wrapper the column doesn't get added at all. If I execute the code in the Init event of my wrapper the column is added but with every (ajax) postback the column is being re-added to the grid which results in having multiple delete buttons within the grid.
Implementation (Implementation of custom wrapper, DataGrid, see below):
| <myapp:DataGrid ID="grdAdminOverview" runat="server" ShowEditButton="true" ShowDeleteButton="true"> | 
| <Columns> | 
| <telerik:GridBoundColumn HeaderText="Firstname" DataField="firstname" /> | 
| <telerik:GridBoundColumn HeaderText="Lastname" DataField="lastname" /> | 
| <telerik:GridBoundColumn HeaderText="Username" DataField="username" /> | 
| <telerik:GridBoundColumn HeaderText="Email" DataField="email" /> | 
| <telerik:GridBoundColumn HeaderText="Isadmin" DataField="isadmin" /> | 
| </Columns> | 
| </myapp:DataGrid> | 
Wrapper (wraps RadGrid with default settings):
| <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="DataGrid.ascx.cs" Inherits="Controls.DataGrid" %> | 
| <telerik:RadGrid ID="radDataGrid" runat="server" AutoGenerateColumns="false" AllowPaging="true" Height="425px" Width="750px"> | 
| </telerik:RadGrid> | 
As soon as I add my custom columns within the Init event of my custom control the columns are being added, but as said this results in having a column being added with each (ajax) postback. To prevent this from happening I tried checking if the column is already added (also in init event) using: radDataGrid.Columns.FindByUniqueNameSafe("DeleteColumn") but this always returns null.
Am I doing something wrong here?

