Per nuove istanze del browser devi servirti per forza del computer del client...
Se non vuoi usare l'istruzione che registra lo script nella pagina finale, puoi mettere direttamente l'open nel tag dell'elemento che comanda l'apertura della nuova istanza...
codice:
<input onclick="window.open('pagina.aspx')" type="submit" value="nuovafinestra">
In alternativa, si potrebbe fare una classe che incapsula tutte le proprietà della nuova finestra, e settare queste da codice lato server.
Classe:
codice:
Public Class popup
Public URL As String = "about:blank"
Public Altezza As Integer = 0
Public Larghezza As Integer = 0
Public Top As Integer = 0
Public Left As Integer = 0
End Class
Pagina (vb)
codice:
Public pop As New popup
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
With pop
.URL = "pagina.html"
.Altezza = 500
.Larghezza = 400
.Top = 200
.Left = 400
End With
Page.DataBind()
End Sub
Pagina (aspx)
codice:
<form id="Form1" method="post" runat="server">
<input type=submit value="Apri Popup"
onclick="window.open('<%# pop.URL %>', null, 'height=<%# pop.Altezza %>,width=<%# pop.Larghezza %>,top=<%# pop.Top %>,left=<%# pop.Left %>');">
</form>
l'oggetto pop, di tipo popup, viene visto da qualsiasi punto nella pagina perchè è dichiarato public in cima ad essa...