• Viernes 8 de Noviembre de 2024, 09:35

Autor Tema:  Manipular 2 radgrid en un solo formulario  (Leído 1036 veces)

mellonivn

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Manipular 2 radgrid en un solo formulario
« en: Martes 22 de Julio de 2008, 14:57 »
0
Buenas, tengo el siguiente problema: inserté dos radgrids en un mismo formulario porque muestro dos cosas distintas que mas adelante se unen. El tema es que debo seleccionar una fila de cada radgrid para poder hacer las cosas. Encontré un ejemplo en la ayuda del radgrid, pero solo funciona para un radgrid en un formulario.

En el archivo .aspx definí una función javascript:

function RowClick(index)
{
var PostBackRowClick = new String();

PostBackRowClick = "<%= PostBackRowClick %>";

var CodItemOrg = this.GetCellByColumnUniqueName(this.Rows[index], "COD_ITEM_ORG").innerHTML;
var CodNominaOrg = this.GetCellByColumnUniqueName(this.Rows[index], "COD_NOMINA_ORG").innerHTML;
var CodProv = this.GetCellByColumnUniqueName(this.Rows[index], "CODPROV").innerHTML;
var CodActual = this.GetCellByColumnUniqueName(this.Rows[index], "cod_Actual").innerHTML;

var row = "RowClicked,COD_ITEM_ORG:" + CodItemOrg + "$COD_NOMINA_ORG:" + CodNominaOrg + "$CODPROV:" + CodProv + "$COD_ACTUAL:" + CodActual;

PostBackRowClick = PostBackRowClick.replace("RowClicked",row);

eval(PostBackRowClick);
}

Luego en el archivo .aspx.vb declaro la variable:

Protected PostBackRowClick As String

y los métodos:

    Protected Overrides Sub RaisePostBackEvent(ByVal source As IPostBackEventHandler, ByVal eventArgument As String)
        Dim contador As Integer

        If Not (source Is Me.RadGrid1) Then
            MyBase.RaisePostBackEvent(source, eventArgument)
            Return
        End If
        Dim postBackEventArgumentData As String() = eventArgument.Split(",")
        Select Case postBackEventArgumentData(0)
            Case "RowClicked"
                Dim rowClickedEventArgumentData As String() = postBackEventArgumentData(1).Split("$")
                LError.Text = ""
                Dim longitud As Integer = rowClickedEventArgumentData.Length - 1
                For contador = 0 To longitud
                    Dim cellClickedEventArgumentData As String() = rowClickedEventArgumentData(contador).Split(":")
                    LError.Text += cellClickedEventArgumentData(0) & ":" & cellClickedEventArgumentData(1) & "; "
                Next
        End Select
    End Sub

    Private Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.PreRender
        PostBackRowClick = Me.GetPostBackEventReference(RadGrid1, "RowClicked")
    End Sub

Como hago para diferenciar cuando se selecciona de un radgrid y cuando de otro, ya que estos métodos no pertenecen a los radgrid.

Cualquier ayudar será bienvenida. Gracias.