Hello
I have a radgrid which is build from a cross table.
I need the get column's value, from the Radgrid_ItemCommand. The thing is that I don't know the whole name of the column. I only know the first 3 characters ("TRA") of the column.
Here is my code
Does somebody know how to get that?
Thank you!
I have a radgrid which is build from a cross table.
I need the get column's value, from the Radgrid_ItemCommand. The thing is that I don't know the whole name of the column. I only know the first 3 characters ("TRA") of the column.
Here is my code
| Private Sub RadGrid1_ItemCommand(ByVal source As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles RadGrid1.ItemCommand |
| If e.CommandName = "UpdateAll" Then |
| For Each editedItem As GridEditableItem In RadGrid1.EditItems |
| Dim newValues As New Hashtable() |
| e.Item.OwnerTableView.ExtractValuesFromItem(newValues, editedItem) |
| SqlDsIntervenant.InsertCommand = String.Format("INSERT INTO T_COMPTENCES_TRANVERSALES (FICHE, MAT, GRP, NO_INTERV, COMPTENCES, NOM, PRENOM) VALUES (" & newValues("FICHE") & ",'" & newValues("MAT") & "', '" & newValues("GRP") & "', '" & newValues("NO_INTERV") & "', '" & newValues("COMPTENCES") & "','" & newValues("NOM") & "','" & newValues("PNOM") & "')") |
| SqlDsIntervenant.Insert() |
| editedItem.Edit = False |
| Next |
| End If |
| RadGrid1.Rebind() |
| End Sub |
Thank you!
2 Answers, 1 is accepted
0
Myriam
Top achievements
Rank 1
answered on 25 May 2009, 08:26 PM
I tried this but the "competence" field always gives me " " in my table. And I would like to have the whole name of the column which begin by "TRA" if possible. That's what I was trying to do with this line without succeed
Thank you very much!
|
|
| Imports System.Data | |
| Imports System.Data.OleDb | |
| Imports System | |
| Imports Telerik.Web.UI | |
| Imports System.Configuration | |
| Partial Public Class FEN_COMPETENCES_TRANSVERSALES_FINALES | |
| Inherits System.Web.UI.Page | |
| Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load | |
| If Not IsPostBack Then | |
| Dim dsLogin As New DataSet | |
| dsLogin = Session("sDsLogin") | |
| Me.SqlDsIntervenant.SelectParameters("ID_ECO").DefaultValue = dsLogin.Tables(0).Rows(0).Item("ID_ECO") | |
| Me.SqlDsIntervenant.SelectParameters("NO_INTERV").DefaultValue = dsLogin.Tables(0).Rows(0).Item("NO_INTERV") | |
| Me.SqlDsIntervenant.SelectParameters("ANNEE").DefaultValue = Session("sAnnee") | |
| Me.SqlDsLegende.SelectParameters("ID_ECO").DefaultValue = dsLogin.Tables(0).Rows(0).Item("ID_ECO") | |
| Me.SqlDSLegende.SelectParameters("INTERV").DefaultValue = dsLogin.Tables(0).Rows(0).Item("NO_INTERV") | |
| End If | |
| End Sub | |
| Private Sub RadGrid1_ColumnCreated(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridColumnCreatedEventArgs) Handles RadGrid1.ColumnCreated | |
| If (e.Column.ColumnType = "GridBoundColumn") AndAlso (Left(e.Column.UniqueName, 3) <> "TRA") AndAlso e.Column.UniqueName <> "NOM" AndAlso e.Column.UniqueName <> "PNOM" AndAlso e.Column.UniqueName <> "FICHE" AndAlso e.Column.UniqueName <> "ID_ECO" AndAlso e.Column.UniqueName <> "ANNEE" AndAlso e.Column.UniqueName <> "NO_INTERV" AndAlso e.Column.UniqueName <> "GRP" Then | |
| Dim bndcol As GridBoundColumn = DirectCast(e.Column, GridBoundColumn) | |
| bndcol.[ReadOnly] = True | |
| End If | |
| End Sub | |
| Private Sub RadGrid1_ItemCommand(ByVal source As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles RadGrid1.ItemCommand | |
| If e.CommandName = "UpdateAll" Then | |
| For Each editedItem As GridEditableItem In RadGrid1.EditItems | |
| Dim newValues As New Hashtable() | |
| Dim Competence As String | |
| Dim Matiere As String | |
| Dim cpt As Integer = 0 | |
| e.Item.OwnerTableView.ExtractValuesFromItem(newValues, editedItem) | |
| While cpt < editedItem.Controls.Count - 2 | |
| If Left(CType(RadGrid1.MasterTableView.AutoGeneratedColumns(cpt), GridBoundColumn).UniqueName, 3) = "TRA" Then | |
| Competence = CType(editedItem, GridEditableItem)(CType(RadGrid1.MasterTableView.AutoGeneratedColumns(cpt), GridBoundColumn).UniqueName).Text | |
| 'Matiere = CType(editedItem, GridDataItem)(CType(RadGrid1.MasterTableView.AutoGeneratedColumns(cpt), GridBoundColumn).UniqueName) | |
| Exit While | |
| End If | |
| cpt = cpt + 1 | |
| End While | |
| 'If Left(CType(RadGrid1.MasterTableView.AutoGeneratedColumns(0), GridBoundColumn).UniqueName, 3) = "TRA" Then | |
| 'If TypeOf e.Item Is GridDataItem Then | |
| 'Competence = CType(editedItem, GridDataItem)(CType(RadGrid1.MasterTableView.AutoGeneratedColumns(0), GridBoundColumn).UniqueName).Text | |
| ' CType(e.Item, GridDataItem)(CType(RadGrid1.MasterTableView.AutoGeneratedColumns(0), GridBoundColumn).UniqueName).BackColor = System.Drawing.SystemColors.Control | |
| ' CType(e.Item, GridDataItem)(CType(RadGrid1.MasterTableView.AutoGeneratedColumns(0), GridBoundColumn).UniqueName).BorderColor = System.Drawing.Color.White | |
| 'End If | |
| SqlDsIntervenant.InsertCommand = String.Format("INSERT INTO T_COMPTENCES_TRANVERSALES (FICHE, MAT, GRP, NO_INTERV, COMPTENCES, NOM, PRENOM) VALUES (" & newValues("FICHE") & ",'" & Matiere & "', '" & newValues("GRP") & "', '" & newValues("NO_INTERV") & "', '" & Competence & "','" & newValues("NOM") & "','" & newValues("PNOM") & "')") | |
| SqlDsIntervenant.Insert() | |
| editedItem.Edit = False | |
| ' End If | |
| Next | |
| End If | |
| RadGrid1.Rebind() | |
| End Sub | |
| Private Sub RadGrid1_ItemCreated(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles RadGrid1.ItemCreated | |
| e.Item.OwnerTableView.GetColumn("ID_ECO").Display = False | |
| e.Item.OwnerTableView.GetColumn("NO_INTERV").Display = False | |
| e.Item.OwnerTableView.GetColumn("ANNEE").Display = False | |
| e.Item.OwnerTableView.GetColumn("NOM").Display = False | |
| e.Item.OwnerTableView.GetColumn("PNOM").Display = False | |
| e.Item.OwnerTableView.GetColumn("FICHE").Display = False | |
| e.Item.OwnerTableView.GetColumn("GRP").Display = False | |
| End Sub | |
| Public Sub RadGrid1_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadGrid1.PreRender | |
| For Each item As GridDataItem In RadGrid1.MasterTableView.Items | |
| item.Edit = True | |
| Next | |
| RadGrid1.MasterTableView.Rebind() | |
| For Each edititem As GridEditableItem In RadGrid1.MasterTableView.GetItems(GridItemType.EditItem) | |
| For Each col As GridColumn In RadGrid1.MasterTableView.RenderColumns | |
| If col.ColumnType = "GridBoundColumn" Then | |
| If edititem.IsInEditMode Then | |
| Dim txtbx As TextBox = DirectCast(edititem(col.UniqueName).Controls(0), TextBox) | |
| txtbx.Width = 50 | |
| If txtbx.Text = "NE" Then | |
| txtbx.Text = "" | |
| End If | |
| End If | |
| End If | |
| Next | |
| Next | |
| End Sub | |
| End Class |
| <%@ Page Language="vb" AutoEventWireup="false" CodeBehind="FEN_COMPETENCES_TRANSVERSALES_FINALES.aspx.vb" Inherits="Competences_Transversales_Web.FEN_COMPETENCES_TRANSVERSALES_FINALES" %> |
| <%@ Register assembly="Telerik.Web.UI" namespace="Telerik.Web.UI" tagprefix="telerik" %> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml" > |
| <head runat="server"> |
| <title>Compétences transversales WEB</title> |
| <link href="StyleSheet1.css" type="text/css" rel="stylesheet"/> |
| </head> |
| <body> |
| <form id="form1" runat="server"> |
| <div> |
| <asp:SqlDataSource ID="SqlDsIntervenant" runat="server" |
| ConnectionString="<%$ ConnectionStrings:ConnectionString %>" |
| ProviderName="<%$ ConnectionStrings:ConnectionString.ProviderName %>" |
| selectcommand="TRANSFORM Min(IIf(IsNull([COMPTENCES]),'NE',[comptences])) AS MinDeCOMPTENCES SELECT Req_Tuteur_de_Quel_Eleve.NOM & ', ' & Req_Tuteur_de_Quel_Eleve.PNOM as Eleve , Req_Tuteur_de_Quel_Eleve.ID_ECO, Req_Tuteur_de_Quel_Eleve.ANNEE, Req_Tuteur_de_Quel_Eleve.NOM, Req_Tuteur_de_Quel_Eleve.PNOM, Req_Tuteur_de_Quel_Eleve.FICHE, Req_Tuteur_de_Quel_Eleve.NO_INTERV,Req_Tuteur_de_Quel_Eleve.GRP FROM ((Req_Tuteur_de_Quel_Eleve INNER JOIN dbo_GPM_E_MAT_ELE ON Req_Tuteur_de_Quel_Eleve.FICHE = dbo_GPM_E_MAT_ELE.FICHE AND Req_Tuteur_de_Quel_Eleve.ID_ECO = dbo_GPM_E_MAT_ELE.ID_ECO) LEFT JOIN T_COMPTENCES_TRANVERSALES ON dbo_GPM_E_MAT_ELE.GRP = T_COMPTENCES_TRANVERSALES.GRP AND dbo_GPM_E_MAT_ELE.MAT = T_COMPTENCES_TRANVERSALES.MAT AND dbo_GPM_E_MAT_ELE.FICHE = T_COMPTENCES_TRANVERSALES.FICHE) INNER JOIN dbo_GPM_T_MAT ON dbo_GPM_E_MAT_ELE.MAT = dbo_GPM_T_MAT.MAT AND dbo_GPM_E_MAT_ELE.ID_ECO = dbo_GPM_T_MAT.ID_ECO WHERE ((Req_Tuteur_de_Quel_Eleve.ID_ECO=?) AND (Req_Tuteur_de_Quel_Eleve.NO_INTERV=?) AND (Req_Tuteur_de_Quel_Eleve.ANNEE=?)) GROUP BY Req_Tuteur_de_Quel_Eleve.NOM & ', ' & Req_Tuteur_de_Quel_Eleve.PNOM , Req_Tuteur_de_Quel_Eleve.ID_ECO, Req_Tuteur_de_Quel_Eleve.ANNEE,Req_Tuteur_de_Quel_Eleve.NOM, Req_Tuteur_de_Quel_Eleve.PNOM, Req_Tuteur_de_Quel_Eleve.FICHE, Req_Tuteur_de_Quel_Eleve.NO_INTERV, Req_Tuteur_de_Quel_Eleve.ECO, Req_Tuteur_de_Quel_Eleve.GRP PIVOT dbo_GPM_T_MAT.mat & '-' & Left([DESCR],6)"> |
| <SelectParameters> |
| <asp:Parameter Name="ID_ECO" Type="int32" /> |
| <asp:Parameter Name="NO_INTERV" Type="String" /> |
| <asp:Parameter Name="ANNEE" Type="int32" /> |
| </SelectParameters> |
| </asp:SqlDataSource> |
| <asp:SqlDataSource id="SqlDSLegende" runat="server" |
| connectionstring="<%$ ConnectionStrings:ConnectionString %>" |
| providerName="<%$ ConnectionStrings:ConnectionString.ProviderName %>" |
| selectcommand="SELECT R_MSG_CODE.CODE_MSG_CODE,R_MSG_CODE.DESCR FROM R_MSG_CODE WHERE (((R_MSG_CODE.INTERV)=?) AND ((R_MSG_CODE.ID_ECO)=?)) ORDER BY CODE_MSG_CODE"> |
| <SelectParameters> |
| <asp:Parameter Name="INTERV" Type="String" /> |
| <asp:Parameter Name="ID_ECO" Type="int32" /> |
| </SelectParameters> |
| </asp:SqlDataSource> |
| <asp:ScriptManager ID="ScriptManager1" runat=server></asp:ScriptManager> |
| <table width="100%"> |
| <tr> |
| <td colspan=2 align=center><asp:Label ID="Label1" runat="server" Font-size=X-Large Text="Commission Scolaire de la BEAUCE-ETCHEMIN"></asp:Label></td> |
| </tr> |
| <tr> |
| <td height="20px" align=right valign=top><asp:Label ID="Label2" runat="server" Font-Size=Smaller Text="Ensemble"></asp:Label> </td> |
| <td align=left valign=bottom><asp:Label ID="Label3" runat="server" Font-Size=Smaller Font-Italic=true Text="vers l'avenir"></asp:Label></td> |
| </tr> |
| <tr> |
| <td colspan=2 align=center><asp:Label ID="Label4" runat="server" Font-Size=Larger Text="Compétences transversales"></asp:Label></td> |
| </tr> |
| <tr> |
| <td colspan=2 align=center> |
| <telerik:RadGrid |
| ID="RadGrid2" |
| runat="server" |
| GridLines="Both" |
| Skin="Web20" |
| width="80%" |
| DataSourceID="SqlDslegende"> |
| <MasterTableView |
| datasourceid="SqlDSlegende" |
| Name="MTVLegende" |
| AutoGenerateColumns=false |
| CssClass="Legende" |
| NoMasterRecordsText="Aucun enregistrement" |
| NoDetailRecordsText="Aucun enregistrement" |
| ItemStyle-Font-Size=X-Small |
| ItemStyle-Wrap=true |
| AlternatingItemStyle-Font-Size=X-Small> |
| <ItemStyle CssClass="Row1" /> |
| <AlternatingItemStyle CssClass="Row1" /> |
| <FooterStyle CssClass="Row1" /> |
| <Columns> |
| <telerik:GridBoundColumn |
| DataField="CODE_MSG_CODE" |
| UniqueName="CODE_MSG_CODE" |
| HeaderText="Code" |
| ReadOnly=true> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn |
| DataField="DESCR" |
| UniqueName="DESCR" |
| HeaderText="Description" |
| ReadOnly=true ItemStyle-HorizontalAlign=Left> |
| </telerik:GridBoundColumn> |
| </Columns> |
| </MasterTableView> |
| </telerik:RadGrid> |
| </td> |
| </tr> |
| </table> |
| <br /> |
| <telerik:RadGrid |
| ID="RadGrid1" |
| runat="server" |
| GridLines="Both" |
| AllowAutomaticUpdates=true |
| AllowMultiRowEdit = "True" |
| Skin="Web20" |
| DataSourceID="SqlDsIntervenant" |
| OnPreRender="RadGrid1_PreRender" |
| > |
| <MasterTableView |
| datasourceid="SqlDSIntervenant" |
| Name="MTVIntervenant" |
| HierarchyDefaultExpanded=true |
| AllowAutomaticUpdates=true |
| ExpandCollapseColumn-HeaderStyle-Width="5px" |
| ExpandCollapseColumn-HeaderStyle-HorizontalAlign="Left" |
| AutoGenerateColumns=true |
| EditMode="InPlace" |
| CommandItemDisplay="TopAndBottom" |
| NoMasterRecordsText="Aucun enregistrement" |
| NoDetailRecordsText="Aucun enregistrement" |
| > |
| <Columns> |
| </Columns> |
| <CommandItemTemplate> |
| <asp:Button runat="server" ID="UpdateAll" Text="Update All" CommandName="UpdateAll" /> |
| </CommandItemTemplate> |
| </MasterTableView> |
| </telerik:RadGrid> |
| <br /> |
| <table width="100%"> |
| <tr> |
| <td align=center> |
| <telerik:RadGrid |
| ID="RadGrid3" |
| runat="server" |
| GridLines="Both" |
| Skin="Web20" |
| width="80%" |
| DataSourceID="SqlDslegende"> |
| <MasterTableView |
| datasourceid="SqlDSlegende" |
| Name="MTVLegende" |
| AutoGenerateColumns=false |
| CssClass="Legende" |
| NoMasterRecordsText="Aucun enregistrement" |
| NoDetailRecordsText="Aucun enregistrement" |
| ItemStyle-Font-Size=X-Small |
| ItemStyle-Wrap=true |
| AlternatingItemStyle-Font-Size=X-Small> |
| <ItemStyle CssClass="Row1" /> |
| <AlternatingItemStyle CssClass="Row1" /> |
| <FooterStyle CssClass="Row1" /> |
| <Columns> |
| <telerik:GridBoundColumn |
| DataField="CODE_MSG_CODE" |
| UniqueName="CODE_MSG_CODE" |
| HeaderText="Code" |
| ReadOnly=true> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn |
| DataField="DESCR" |
| UniqueName="DESCR" |
| HeaderText="Description" |
| ReadOnly=true ItemStyle-HorizontalAlign=Left> |
| </telerik:GridBoundColumn> |
| </Columns> |
| </MasterTableView> |
| </telerik:RadGrid> |
| </td> |
| </tr> |
| </table> |
| </div> |
| </form> |
| </body> |
| </html> |
Thank you very much!
0
Myriam
Top achievements
Rank 1
answered on 26 May 2009, 12:56 PM
Here is what I did if it can help someone else
YEAH!!
| Private Sub RadGrid1_ColumnCreated(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridColumnCreatedEventArgs) Handles RadGrid1.ColumnCreated |
| If (e.Column.ColumnType = "GridBoundColumn") AndAlso (Left(e.Column.UniqueName, 3) <> "TRA") AndAlso e.Column.UniqueName <> "NOM" AndAlso e.Column.UniqueName <> "PNOM" AndAlso e.Column.UniqueName <> "FICHE" AndAlso e.Column.UniqueName <> "ID_ECO" AndAlso e.Column.UniqueName <> "ANNEE" AndAlso e.Column.UniqueName <> "NO_INTERV" AndAlso e.Column.UniqueName <> "GRP" Then |
| Dim bndcol As GridBoundColumn = DirectCast(e.Column, GridBoundColumn) |
| bndcol.[ReadOnly] = True |
| ElseIf (Left(e.Column.UniqueName, 3) = "TRA") Then |
| Session("sTempCompUniqueId") = e.Column.UniqueName |
| End If |
| End Sub |
| Private Sub RadGrid1_ItemCommand(ByVal source As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles RadGrid1.ItemCommand |
| If e.CommandName = "UpdateAll" Then |
| For Each editedItem As GridEditableItem In RadGrid1.EditItems |
| Dim newValues As New Hashtable() |
| e.Item.OwnerTableView.ExtractValuesFromItem(newValues, editedItem) |
| SqlDsIntervenant.InsertCommand = String.Format("INSERT INTO T_COMPTENCES_TRANVERSALES (FICHE, MAT, GRP, NO_INTERV, COMPTENCES, NOM, PRENOM) VALUES (" & newValues("FICHE") & ",'" & Session("sTempCompUniqueId") & "', '" & newValues("GRP") & "', '" & newValues("NO_INTERV") & "', '" & newValues(Session("sTempCompUniqueId")) & "','" & newValues("NOM") & "','" & newValues("PNOM") & "')") |
| SqlDsIntervenant.Insert() |
| editedItem.Edit = False |
| Next |
| End If |
| RadGrid1.Rebind() |
| End Sub |