Todavía no termino de entender cómo funciona todo este asunto. Lo que yo quiero hacer es que una página le transfiera el control a otra pasándole un valor en particular, pero sin tener que hacerlo a través del Query String.
 
Eso una vez lo resolví con Server.Transfer, pero en ese caso los valores del formulario podían leerse con Request.Form.Get, y ahora no, y no sé cuál es la diferencia. ¿Hay alguna regla para qué tipos de controles pueden leerse y cuales no? Probé con un Label, un TextBox y un HtmlInputText, y en todos los casos me pasa lo mismo.
 
Primero hago:
 Filtro.Value=<un string>;
donde Filtro es mi campo de texto o lo que sea. Para las versiones que no tenían la propiedad Value usé Text.
 
Después hago (para probar):
 Response.Write(Request.Form.Get("Filtro"));
Nada. Devuelve null (lo comprobé debuggeando).
 
Si hago:
 Response.Write(Filtro.Value);
Ahí sí se ve, pero no puedo pasarlo a la otra página.
 
Probé recargar la página poniendo Request.Form.Get("Filtro") en la función PageLoad pero tampoco funciona. ¿Alguien me puede ayudar, y de paso aclararme por qué pasa esto?
 
Gracias.
Gabi. 
  
 
