ASP.NET - insertar codigo c

 
Vista:

insertar codigo c

Publicado por noelia (1 intervención) el 15/07/2005 18:30:20


Me dieron esta rutina en C que me permitiria poder utilizar Enter en los cuadros
textbox, pero quisiera saber como puede insertar tal codigo en un formulario web
de .net. para poder llamarla al cargar la pagina

gracias

ahi va el codigo



protected void RegisterENTERRoutine()
{
StringBuilder cs = new StringBuilder();
string fName="Form1"; ///Nombre del formulario cambiar si es necesario
int control_count = 0;
///recorremos todos los controles en el formulario
foreach(Control c in Page.FindControl(fName).Controls)
{
///Nos interesan por ahora sólo los TextBoxes
if ((c is TextBox) && (((TextBox)c).Enabled) && (!((TextBox)c).ReadOnly))
{
///construimos el arreglo o vector paso a paso
cs.Append(" '"+c.ID+"',");
control_count++;
///Añadimos un evento adicional para controlar el cambio de focus
((TextBox)c).Attributes.Add("onfocus","javascript:nextControl="+control_count.ToString()+";");
}
}
string holder = cs.ToString().Substring(0, cs.Length -1);
///registramos la cadena construida como un arreglo de JavaScript
Page.RegisterArrayDeclaration("controles", holder);

///Ahora el script que dará vida a esto
StringBuilder sb = new StringBuilder();
sb.Append("<script language=javascript>");
sb.Append("<!-- The JavaScript Source!! http://javascript.internet.com -->"); ///Inspiración
sb.Append("nextControl = 0;"); ///nextControl es el índice del próximo
sb.Append("Frm = '"+fName+"';");
sb.Append("ccount ="+control_count.ToString()+";");
sb.Append("netscape = document.layers;");
sb.Append("function kPress( eventoPulsaTecla ) ");///Aquí se intercepta el evento
sb.Append("{ tecla = (netscape) ? eventoPulsaTecla.which : window.event.keyCode;");
sb.Append(" if (tecla == 13) { ");
sb.Append(" eval('document.' + Frm + '.' + controles[nextControl] + '.focus()');");
sb.Append(" eval('if(nextControl < ccount-1) nextControl++; else nextControl = 0;');");
sb.Append(" return false; } }");
sb.Append("document.onkeydown = kPress; ");
sb.Append("if (netscape) document.captureEvents(Event.KEYDOWN); ");
sb.Append("</script>");
Page.RegisterClientScriptBlock("<ENTER>", sb.ToString());
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder