Después de la devolución de datos (haga clic en un botón) en mi formulario ASP.NET, todos los DataItem de mi formulario son nulos. ¿Por qué? ¿Qué debo hacer para recuperar el contenido de la lista de datos incluso después de la devolución?ASP.NET/DataItem de DataList es nulo después de Postback
protected void buttonAddRecord_Click(object sender, EventArgs e)
{
foreach (DataListItem item in listFields.Items)
{
// item.DataItem == null WTF?
}
}
protected void Page_Load(object sender, EventArgs e)
{
BindFields();
}
private void BindFields()
{
object setting = MySettings.GetSetting();
if (!Null.IsNull(setting))
{
listFields.DataSource =
DataProvider.GetData(int.Parse(setting.ToString()));
listFields.DataBind();
}
listFields.Visible = listFields.Items.Count > 0;
emptyMessage.Visible = listFields.Items.Count == 0;
}
Bueno, no veo otra opción. Y está funcionando bastante bien hasta ahora. – asmo
HiddenField funcionó para mí. Estoy usando un repetidor y necesito persistir los datos del enlace a los clics del botón. – Cordell
Esto suena como una buena manera de hacer el doble de llamadas a la base de datos según sea necesario. Parece que DataList podría tener un modelo pobre. – NetMage