Have your other control store the value in a hidden field, and on postback, pull the value from the hidden field and push it into the textbox on the server side.
txtStartDate.Attributes.Add("readonly", "readonly"); on pageload in the best of the best solutions ,instead or Javascripts,hidden variables,cache,cookies,sessions & Caches.