Intet post back på click-event i WebControl
Jeg er løbet ind i nogle problemer som jeg håber I kan give lidt hjælp med.Jeg har lavet et WebControl som ser ud som følgende:
public class TestControl : WebControl
{
private GridView _GridView;
private TextBox _TxtBoxName;
private LinkButton _BtnSubmit;
private Label _lblStatus;
private List<J_Test> _TestData;
public TestControl()
{
_GridView = new GridView();
_GridView.DataSource = _TestData;
_TestData = TestController.GetAllTestEntities().ToList();
_TxtBoxName = new TextBox();
_BtnSubmit = new LinkButton();
_BtnSubmit.ID = "BID";
_BtnSubmit.Text = "Tilføj testdata";
_BtnSubmit.Click += new EventHandler(_BtnSubmit_Click);
_lblStatus = new Label();
}
void _BtnSubmit_Click(object sender, EventArgs e)
{
// Adds to db
J_Test obj = new J_Test();
obj.Name = _TxtBoxName.Text;
obj.ID = System.Guid.NewGuid();
DataService<J_Test>.Save(obj);
HttpContext.Current.Response.Redirect("about:wee");
}
protected override void CreateChildControls()
{
this.Controls.Clear();
// Inserts submit-things
this.Controls.Add(new Literal(){Text = "Name: "});
this.Controls.Add(_TxtBoxName);
this.Controls.Add(_BtnSubmit);
this.Controls.Add(_lblStatus);
this.Controls.Add(_GridView);
}
}
Kontrollen bliver indsat på en webform og knapper osv bliver vist. Men når jeg trykker på knappen, laves der et "refresh" men mit event bliver ikke kørt. Hvis jeg placerer præcis samme kode i code-behind filen til webformen virker alt perfekt.
Er der noget jeg har overset?