Asp.Net Repeater loses data on postback -


my problem bit more complicated title says:

i made user control (i called editor) editing data base data user control made(i called gridview).

the editor use each row (a row usercontrol , editor inside row insert) inside gridview , work not when try use insert.

the difference between insert , edit field:

    #region field     /// <summary>     ///      /// </summary>     //public field field { { return dataitem field; } }     private field _field;     [bindable(true)]     public field field     {                 {             if (isinsert && _field == null)             {                 _field = subscriptioncontroller.createfield();             }             return _field;         }         set { _field = value; }     }     #endregion 

inside field i've collection bind repeater subscriptioncontroller.createfield(); method create instance of field class , collection inside here code:

    public field createfield()     {         field field = new field();         field.type = getfieldtypes().first();         field.label = new localizedstringcollection();         field.values = new fieldvaluecollection();         field.selections = new fieldselectioncollection();         foreach (models.traininggroup traininggroup in gettraininggroup())         {             foreach (models.division division in getdivisions())             {                 foreach (models.profilstatusgroup profilstatusgroup in getprofilstatusgroup())                 {                     field.selections.add(new models.fieldselection() { selected = false, divisionid = division.id, profilstatusgroupid = profilstatusgroup.id, traininggroupid = traininggroup.id });                 }             }         }     } 

the collection bind stored in viewstate :

    #region fieldvalues     /// <summary>     /// get/set fieldvalues viewstate     /// </summary>     public fieldvaluecollection fieldvalues     {                 {             if (viewstate["fieldvalues"] == null)             {                 if (field != null && field.values != null)                     viewstate.add("fieldvalues", field.values);                 else                     viewstate.add("fieldvalues", new fieldvaluecollection());             }             if (viewstate["fieldvalues"] != null)             {                 return (fieldvaluecollection)viewstate["fieldvalues"];             }             return null;         }         set         {             if (viewstate["fieldvalues"] == null)             {                 viewstate.add("fieldvalues", value);             }             else             {                 viewstate["fieldvalues"] = value;             }          }     }     #endregion 

but when on postback textboxes inside repeater empty.


Comments

Popular posts from this blog

c# - SVN Error : "svnadmin: E205000: Too many arguments" -

c++ - Using OpenSSL in a multi-threaded application -

All overlapping substrings matching a java regex -