This is a migrated thread and some comments may be shown as answers.

Grid with Columns defined in VB code

1 Answer 101 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Laurel
Top achievements
Rank 1
Laurel asked on 15 Dec 2011, 03:41 PM
I posted this as a reply at the end of a similar post but since I haven't gotten any response, I'm starting a new thread.  Here's my original post:

(Sys.WebForms.PageRequestManagerServerErrorException: Multiple controls with the same ID 'EditButton' were found. FindControl requires that controls have unique IDs.).  My grid is defined in my aspx file but my columns are defined in the form Init.  I add the columns to the grid after all columns are created and all properties are set.  

Is there a working sample with this same scenario?

Here's my code:
aspx code:
..
<telerik:RadGrid ID="gridMeasures" runat="server" >
<MasterTableView 
DataKeyNames="m_iWAPMeasureID" >
</MasterTableView> 
</telerik:RadGrid>



vb code:
Protected Sub form1_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles form1.Init

gridMeasures.AllowPaging = True
gridMeasures.AutoGenerateColumns = True
gridMeasures.ShowStatusBar = True
gridMeasures.GridLines = GridLines.None
gridMeasures.Skin = "Hay"
gridMeasures.ClientSettings.Scrolling.AllowScroll = True
gridMeasures.ClientSettings.Scrolling.UseStaticHeaders = True
gridMeasures.PageSize = 50
gridMeasures.MasterTableView.CommandItemDisplay = GridCommandItemDisplay.Top
gridMeasures.MasterTableView.EditFormSettings.EditColumn.Display = True
gridMeasures.MasterTableView.EditMode = GridEditMode.InPlace

AddHandler gridMeasures.DeleteCommand, AddressOf gridMeasures_DeleteCommand
AddHandler gridMeasures.NeedDataSource, AddressOf gridMeasures_NeedDataSource
AddHandler gridMeasures.InsertCommand, AddressOf gridMeasures_InsertCommand
AddHandler gridMeasures.PreRender, AddressOf gridMeasures_PreRender
AddHandler gridMeasures.UpdateCommand, AddressOf gridMeasures_UpdateCommand


Dim oWAPMeasureIDColumn As New GridBoundColumn
oWAPMeasureIDColumn.UniqueName = "m_iWAPMeasureID"
oWAPMeasureIDColumn.DataField = "m_iWAPMeasureID"
oWAPMeasureIDColumn.Visible = False


Dim oEditColumn As New GridEditCommandColumn
oEditColumn.UniqueName = "EditColumn"


Dim oDeletedColumn As New GridButtonColumn
oDeletedColumn.ConfirmText = "Delete this Measure?"
oDeletedColumn.ConfirmDialogType = GridConfirmDialogType.RadWindow
oDeletedColumn.ConfirmTitle = "Delete"
oDeletedColumn.ButtonType = GridButtonColumnType.ImageButton
oDeletedColumn.CommandName = "Delete"
oDeletedColumn.Text = "Delete"
oDeletedColumn.UniqueName = "DeleteColumn"
oDeletedColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Center
oDeletedColumn.ItemStyle.CssClass = "MyImageButton"


Dim oSelectedColumn As New GridTemplateColumn
oSelectedColumn.HeaderText = String.Empty
oSelectedColumn.ItemTemplate = New clsItemSelectedTemplate("m_bSelected")
oSelectedColumn.EditItemTemplate = New clsEditSelectedTemplate("m_bSelected")
oSelectedColumn.DataField = "m_bSelected"
oSelectedColumn.UniqueName = "m_bSelected"


Dim oCategoryColumn As New GridTemplateColumn()
oCategoryColumn.ItemTemplate = New clsMeasureCategoryItemTemplate("m_sMeasureCategory")
oCategoryColumn.EditItemTemplate = New clsMeasureCategoryEditTemplate("m_sMeasureCategory", sAgId)
oCategoryColumn.DataField = "m_sMeasureCategory"
oCategoryColumn.UniqueName = "m_sMeasureCategory"
oCategoryColumn.HeaderText = "Measure Category"


Dim oDescriptionColumn As New GridTemplateColumn()
oDescriptionColumn.ItemTemplate = New clsMeasureDescriptionItemTemplate("m_sMeasureDescription")
oDescriptionColumn.EditItemTemplate = New clsMeasureDescriptionEditTemplate("m_sMeasureDescription", sAgId)
oDescriptionColumn.DataField = "m_sMeasureDescription"
oDescriptionColumn.UniqueName = "m_sMeasureDescription"
oDescriptionColumn.HeaderText = "Measure Description"


Dim oPricePerUnitColumn As New GridTemplateColumn()
oPricePerUnitColumn.ItemTemplate = New clsPricePerUnitItemTemplate("m_decPricePerUnit")
oPricePerUnitColumn.EditItemTemplate = New clsPricePerUnitEditTemplate("m_decPricePerUnit")
oPricePerUnitColumn.DataField = "m_decPricePerUnit"
oPricePerUnitColumn.UniqueName = "m_decPricePerUnit"
oPricePerUnitColumn.HeaderText = "Unit Price"
oPricePerUnitColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Right


Dim oUnitColumn As New GridTemplateColumn()
oUnitColumn.ItemTemplate = New clm_sUnitItemTemplate("m_sUnit")
oUnitColumn.EditItemTemplate = New clm_sUnitEditTemplate("m_sUnit")
oUnitColumn.DataField = "m_sUnit"
oUnitColumn.UniqueName = "m_sUnit"
oUnitColumn.HeaderText = "Unit"


Dim oAuthQtyColumn As New GridTemplateColumn()
oAuthQtyColumn.ItemTemplate = New clsAuthQtyItemTemplate("m_decAuthorizedQty")
oAuthQtyColumn.EditItemTemplate = New clsAuthQtyEditTemplate("m_decAuthorizedQty")
oAuthQtyColumn.HeaderText = "Authorized Qty"
oAuthQtyColumn.UniqueName = "m_decAuthorizedQty"
oAuthQtyColumn.DataField = "m_decAuthorizedQty"
oAuthQtyColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Right
oAuthQtyColumn.ItemStyle.Width = 65


Dim oActualQtyColumn As New GridTemplateColumn()
oActualQtyColumn.ItemTemplate = New clsActQtyItemTemplate("m_decQuantity")
oActualQtyColumn.EditItemTemplate = New clsActQtyEditTemplate("m_decQuantity")
oActualQtyColumn.HeaderText = "Actual Qty"
oActualQtyColumn.UniqueName = "m_decQuantity"
oActualQtyColumn.DataField = "m_decQuantity"
oActualQtyColumn.ItemStyle.Wrap = True
oActualQtyColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Right
oActualQtyColumn.ItemStyle.Width = 65


Dim oTotalPriceColumn As New GridTemplateColumn()
oTotalPriceColumn.ItemTemplate = New clsTotalPriceItemTemplate("m_decTotalPrice")
oTotalPriceColumn.EditItemTemplate = New clsTotalPriceEditTemplate("m_decTotalPrice")
oTotalPriceColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Right
oTotalPriceColumn.DataField = "m_decTotalPrice"
oTotalPriceColumn.UniqueName = "m_decTotalPrice"
oTotalPriceColumn.HeaderText = "Total Price"


Dim oStatusColumn As New GridTemplateColumn()
oStatusColumn.ItemTemplate = New clm_sStatusItemTemplate("m_sStatus")
oStatusColumn.EditItemTemplate = New clm_sStatusEditTemplate("m_sStatus")
oStatusColumn.DataField = "m_sStatus"
oStatusColumn.UniqueName = "m_sStatus"
oStatusColumn.HeaderText = "Status"


Dim oContractorColumn As New GridTemplateColumn()
oContractorColumn.ItemTemplate = New clsContractorItemTemplate("m_sContractor")
oContractorColumn.EditItemTemplate = New clsContractorEditTemplate("m_sContractor", sAgId)
oContractorColumn.DataField = "m_sContractor"
oContractorColumn.UniqueName = "m_sContractor"
oContractorColumn.HeaderText = "Contractor"


Dim oFundSourceColumn As New GridTemplateColumn()
oFundSourceColumn.ItemTemplate = New clsPrimaryFundSourceItemTemplate("m_sPrimaryFundSource")
oFundSourceColumn.EditItemTemplate = New clsPrimaryFundSourceEditTemplate("m_sPrimaryFundSource", sAgId)
oFundSourceColumn.DataField = "m_sPrimaryFundSource"
oFundSourceColumn.UniqueName = "m_sPrimaryFundSource"
oFundSourceColumn.HeaderText = "Funding Source"


Dim oStateCategoryColumn As New GridTemplateColumn()
oStateCategoryColumn.ItemTemplate = New clm_sStateCategoryItemTemplate("m_sStateCategory")
oStateCategoryColumn.EditItemTemplate = New clm_sStateCategoryEditTemplate("m_sStateCategory", sAgId)
oStateCategoryColumn.DataField = "m_sStateCategory"
oStateCategoryColumn.UniqueName = "m_sStateCategory"
oStateCategoryColumn.HeaderText = "BWR Category"


Dim oMeasureInfoID As New GridBoundColumn
oMeasureInfoID.UniqueName = "m_iMeasureInfoID"
oMeasureInfoID.DataField = "m_iMeasureInfoID"
oMeasureInfoID.Visible = False


'Add the columns to the grid
gridMeasures.MasterTableView.Columns.Add(oWAPMeasureIDColumn)
gridMeasures.MasterTableView.Columns.Add(oEditColumn)
gridMeasures.MasterTableView.Columns.Add(oDeletedColumn)
gridMeasures.MasterTableView.Columns.Add(oSelectedColumn)
gridMeasures.MasterTableView.Columns.Add(oCategoryColumn)
gridMeasures.MasterTableView.Columns.Add(oDescriptionColumn)
gridMeasures.MasterTableView.Columns.Add(oPricePerUnitColumn)
gridMeasures.MasterTableView.Columns.Add(oUnitColumn)
gridMeasures.MasterTableView.Columns.Add(oAuthQtyColumn)
gridMeasures.MasterTableView.Columns.Add(oActualQtyColumn)
gridMeasures.MasterTableView.Columns.Add(oTotalPriceColumn)
gridMeasures.MasterTableView.Columns.Add(oStatusColumn)
gridMeasures.MasterTableView.Columns.Add(oContractorColumn)
gridMeasures.MasterTableView.Columns.Add(oFundSourceColumn)
gridMeasures.MasterTableView.Columns.Add(oStateCategoryColumn)
gridMeasures.MasterTableView.Columns.Add(oMeasureInfoID)


End Sub

1 Answer, 1 is accepted

Sort by
0
Pete
Top achievements
Rank 1
answered on 15 Dec 2011, 04:24 PM
Hi,

Absolutely no idea if this will help or not but I figured I'd try and help out since I had a similar problem. I was using AutoGenerated columns in my project, and I was told incredibly helpfully by one of the admins that you can use AutoGenerated edit and delete columns by setting them on the grid, for example:

myGrid.AutoGenerateEditColumn = True

You can do the same with the delete column as well.

Sorry if that's no help, but I saw the thread and knew I had a similar problem and thought I'd try to help out a fellow user.
Tags
Grid
Asked by
Laurel
Top achievements
Rank 1
Answers by
Pete
Top achievements
Rank 1
Share this question
or