Я пытаюсь воссоздать элемент управления TextBox,
проблема в том, что после обратной передачи значение в текстовом поле возвращается в исходное состояние.
Кто-нибудь знает, как заставить его сохранять значение после постбэков?
[DefaultProperty("Text")]
[ToolboxData("<{0}:MyTextBox runat=server></{0}:MyTextBox>")]
public class MyTextBox : WebControl
{
[Bindable(true)]
[DefaultValue("")]
public string Text
{
get
{
return (String)ViewState["Text"] ?? string.Empty;
}
set
{
ViewState["Text"] = value;
}
}
protected override void RenderContents(HtmlTextWriter output)
{
var a = string.Format(@"<input type='text' id='{0}' name='{0}' value='{1}' />", ID, Text);
output.Write(a);
}
protected override void Render(HtmlTextWriter writer)
{
RenderContents(writer);
}
}