[Mono-bugs] [Bug 42939][Wis] New - Problemas con DataGrid
bugzilla-daemon@rocky.ximian.com
bugzilla-daemon@rocky.ximian.com
Tue, 13 May 2003 17:53:54 -0400 (EDT)
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by abel@uajms.edu.bo.
http://bugzilla.ximian.com/show_bug.cgi?id=42939
--- shadow/42939 Tue May 13 17:53:54 2003
+++ shadow/42939.tmp.30885 Tue May 13 17:53:54 2003
@@ -0,0 +1,131 @@
+Bug#: 42939
+Product: Mono/Class Libraries
+Version: unspecified
+OS:
+OS Details:
+Status: NEW
+Resolution:
+Severity:
+Priority: Wishlist
+Component: System.Web
+AssignedTo: mono-bugs@ximian.com
+ReportedBy: abel@uajms.edu.bo
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: Problemas con DataGrid
+
+Description of Problem:
+El Objeto DataGrid no guarda su estado.
+El el siguiente codigo, los valores del TextBox se pierden cuando haces un
+click en el boton "Mostrar notas", por lo tanto no puedo recuperar los los
+valores introducidos.
+Estoy trabajando con la version de mono-0.24, XSP-0.4 y mcs-0.24
+en un servidor Linux-Debian
+
+Otro problema es que el la propiedad EnableViewState del DataGRid aun no
+puede ser "true", creo que es lo que causa que se pierdan los valores del
+TextBox.
+
+Steps to reproduce the problem:
+este es el codigo:
+
+//************
+
+<%@ Page Language="c#" %>
+
+<%@ Import Namespace="System.Data" %>
+
+<html>
+
+<script runat="server">
+
+ ICollection CreateDataSource() {
+ DataTable tabla = new DataTable();
+ DataView vista;
+ DataRow fila;
+ tabla.Columns.Add(new DataColumn("ruValue", typeof(int)));
+ tabla.Columns.Add(new DataColumn("notaValue", typeof(int)));
+ for (int i = 0; i < 4; i++) {
+ fila = tabla.NewRow();
+ fila[0] = i;
+ fila[1] = (i + 1) * 10;
+ tabla.Rows.Add(fila);
+ }
+ vista = new DataView(tabla);
+ return vista;
+ }
+
+ void Page_Load(Object o, EventArgs e) {
+ if (!IsPostBack || Session["_vista"] == null) {
+ Session["_vista"] = CreateDataSource();
+ }
+ dgnotas.DataSource = (DataView) Session["_vista"];
+ dgnotas.DataBind();
+ }
+
+ void mostrarnotas(Object o, EventArgs e) {
+ for (int i = 0; i < dgnotas.Items.Count; i++) {
+ DataGridItem _item = dgnotas.Items[i];
+ TextBox texto = (TextBox)_item.FindControl("txtnota");
+ Response.Write("hola " +texto.Text);
+ }
+ }
+
+</script>
+
+<body>
+<form runat=server>
+
+ <asp:DataGrid id="dgnotas" BorderWidth=1 AutoGenerateColumns=false
+ EnableViewState=false runat=server >
+ <Columns>
+ <asp:BoundColumn HeaderText="R. U." DataField="ruValue" />
+ <asp:BoundColumn HeaderText="Nota" DataField="notaValue" />
+ <asp:TemplateColumn HeaderText="Edite">
+ <ItemTemplate>
+ <asp:TextBox id="txtnota" runat=server
+ Text='<%# DataBinder.Eval(Container, "DataItem.notaValue") %>'
+ Width=25px />
+ </ItemTemplate>
+ </asp:TemplateColumn>
+ </Columns>
+ </asp:DataGrid>
+
+ <br><br>
+ <asp:Button id="gnotas" Text="Mostrar" Onclick="mostrarnotas" runat=server />
+
+</form>
+</body>
+</html>
+
+
+//************
+
+
+Actual Results:
+Los valores de TextBox se pierden.
+Cuando la propiedad EnableViewState es "true", me muestra el si
+me muestra el mensaje:
+ System.ArgumentException: Invalid_DataSource_Type: dgAsignar
+ in <0x000fe> 00 System.Web.UI.WebControls.BaseDataList:set_DataSource
+(object)
+in <0x00054> 00 ASP.adx1_aspx:Page_PreRender (object,System.EventArgs)
+in <0x00076> 01 System.MulticastDelegate:invoke_void_object_EventArgs
+(object,System.EventArgs)
+in <0x00086> 00 System.Web.UI.Control:OnPreRender (System.EventArgs)
+in <0x00051> 00 System.Web.UI.Control:PreRenderRecursiveInternal ()
+in <0x00108> 00 System.Web.UI.Page:ProcessRequest (System.Web.HttpContext)
+in <0x001ac> 00 .ExecuteHandlerState:Execute ()
+in <0x0004e> 00 .StateMachine:ExecuteState (IStateHandler,bool&)
+
+
+
+Expected Results:
+Que muestre el contenido del TextBox.
+
+How often does this happen?
+Siempre
+
+Additional Information: