J'utilise une vue détaillée avec un sqldatasource dans la page ASPX. J'essaye de faire du pré et du post-traitement sur certains des champs - essentiellement pour convertir une liste html en une liste séparée par une nouvelle ligne pour éditer et revenir en html pour stocker dans la base de données.comment modifier les données dans un événement DetailsView Databound
Le post-traitement dans ItemUpdating est assez facile, mais le prétraitement dans DataBound est en désordre ...
protected void DetailsView1_DataBound(object sender, EventArgs e)
{
if (DetailsView1.Rows.Count > 2)
{
string s =((DataRowView)DetailsView1.DataItem).Row.ItemArray[2].ToString();
TextBox box1 = (TextBox) DetailsView1.FindControl("textbox1");
if (box1 != null)
{
box1.Text = preprocess(s);
}
}
}
Sa fragilité de la
string s=((DataRowView)DetailsView1.DataItem).Row.ItemArray[2].ToString();
qui me bouscule. Je suis sûr qu'il me manque quelque chose (plus d'une chose) évidente!
Je suppose que j'espérais faire quelque chose comme mon ItemUpdating ...
e.NewValues["threeline"] = postprocess(e.NewValues["threeline"].ToString());