Hola Andres El código que enviaste hace un postback al servidor para solamente escribir el script de apertura de la nueva ventana. además de este script lo debes registrar en la pagina y no simplemente escribirlo con response.write., para que asp.net tenga un poco mas de control.
Vamos por parte, registrar el script (algo sencillo) Private Sub RegistrarScriptAperturaVentana() Dim scriptVentana as New System.Text.StringBuilder scriptVentana.Append("<script language=""javascript"">" & vbCrLf) scriptVentana.Append("function VerDetalle(codPlan){" & vbCrLf) scriptVentana.Append(" alert(codPlan);" & vbCrLf) scriptVentana.Append("}" & vbCrLf) scriptVentana.Append("</script>" & vbCrLf) ClientScript.RegisterStartupScript(Me.GetType(), "ABRIR", scriptVentana.ToString) End Sub Esto codigo lo puedes escribir tranquilamente dentro de tu pagina, tu masterpage o tu archivo .js externo...ya que no contiene nada raro, puro js. Es decir no es necesario hacerlo desde el codebehind. Cuando lo llamamos al script...yo lo armaria en el evento RowDataBound... Si tienes en tu gridview las columnas y creas una columna template y dentro un linkbutton ... <asp:TemplateField> <ItemTemplate> <asp:LinkButton ID="linkDetalle" runat="server">Detalle</asp:LinkButton> </ItemTemplate> </asp:TemplateField> ... *En el codebehind, en el evento RowDataBound algo asi* Sub tuGrilla_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) If e.Row.RowType = DataControlRowType.DataRow Then Dim linkDetalle as LinkButton = Ctype(e.Row.FindControl("linkDetalle"), LinkButton) Dim codigoPlan As Int32= convert.Toint32(DataBinder.Eval(e.Row.DataItem, "Cod_Plan ")) linkDetalle.OnClientClick = "VerDetalle('" & codigoPlan & "'); return false;" //Luego te comento el return false End If End Sub Asi ya cuando esta armando la grilla, en cada enlace/boton estara el codigo para llamar VerDEtalle que es una funcion del lado del cliente. El "return false;" es para que el webcontorl que elegiste, que es un LinkButton no realice el postback ya que no lo necesita. Tambien como nos brinda la posibilidad de escribir en el diseño codigo ...puedes hacer lo mismo escirbiendo esto en la vista de codigo de la pagina donde defines las columnas y tambien mediante el wizard (con las etiquetas inteligentes del control dentro del template) *Quedaria algo asi:* <asp:TemplateField> <ItemTemplate> <asp:LinkButton ID="linkDetalle" runat="server" OnClientClick='<%# String.Concat("VerDetalle(", Eval("Cod_Plan"), "); return false;") %>'>Detalle</asp:LinkButton> </ItemTemplate> </asp:TemplateField> *Enlaces:* ------------------ GridView.RowDataBound (Evento) Se produce cuando una fila de datos se enlaza a los datos de un control GridView. http://msdn2.microsoft.com/es-es/library/system.web.ui.webcontrols.gridview.rowdatabound.aspx String.Concat (Método) Concatena una o más instancias de String o las representaciones de tipo String de los valores de una o más instancias de Object. http://msdn2.microsoft.com/es-es/library/system.string.concat(VS.80).aspx<http://msdn2.microsoft.com/es-es/library/system.string.concat%28VS.80%29.aspx> Espero que te sirva de ayuda o guia _______________________ Ing. José A. Fernández fernandezja @ gmail . com On Wed, Apr 16, 2008 at 1:58 PM, Andrés Guzmán O <[EMAIL PROTECTED]> wrote: > Hola amigos nuevamente aqui necesitando de su ayuda, tengo un problema, > eh tratado de buscar informacion pero no eh encontrado, quizas no lo estoy > buscando de la forma correcta. Bueno les cuento de que se trata haber si me > dicen por como lo tengo que buscar o que solucion puede tener. > > Lo que estoy haciendo es genero una tabla en forma dinámica, ahora una de > estas celdas tiene un boton, al cual le añado un evento: > > Creo el boton. (la cantidad de filas depende de una consulta a la base de > datos) > > Dim boton As LinkButton = New LinkButton() > boton.Text = "Ver mas" > AddHandler boton.Click, AddressOf Boton1_Click > boton.ToolTip = "Detalle" > tc1d.Controls.Add(boton) > > ahora el evento > > Protected Sub Boton1_Click(ByVal sender As Object, ByVal e As > System.EventArgs) > Dim sUrl As String = "DetalleAsignatura.aspx" > Dim sScript As String = "<script language =javascript> " > sScript += "window.open('" & sUrl & > "',null,'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=350,height=170,left=50,top=50');" > sScript += "</script> " > Response.Write(sScript) > End Sub > Bueno eso es lo que tengo funciona bien pero necesito enviarle un dato (( > dt.Rows(i).Item("Cod_Plan")) a mi Ventana Emergente dependiendo de la fila > de la tabla, ahora esa es mi duda como captura el dato dependiendo de la > fila para pasarselo al evento o abra alguna otra forma de hacerlo y yo me > estoy complicando la vida. > > De ante mano muchas gracias!!!! > > > Andrés Guzmán O. > [EMAIL PROTECTED] > 6711130 anexo 106 > --