The only way I've found to persist property values within a user control is to use the ViewState.
public string Title {
get { return Convert.ToString(ViewState["Title"]); }
set { ViewState["Title"] = value; }
}
I can't say I'm real impressed with this though, as the more properties a user control has the more crap you'll be sticking in the ViewState. Is there a better way to persist properties?
It depends. If you need to property values to be persisted beyond a post-back then you'll either have to use ViewState or Session. Since those controls are re-created on each post back you can't really maintain that state otherwise.