aspx ページで sqldatasource を含む detailsview を使用しています。いくつかのフィールドで前処理と後処理を実行しようとしています-基本的に、htmlリストを編集用の改行区切りリストに変換し、htmlに戻してデータベースに保存します。
ItemUpdating の後処理は簡単ですが、DataBound の前処理は面倒です...
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);
}
}
}
そのもろさ
string s=((DataRowView)DetailsView1.DataItem).Row.ItemArray[2].ToString();
それは私を動揺させます。私は何か(複数のもの)が明らかに欠けていると確信しています!
もっとItemUpdatingのようなことをしたいと思っていたと思います...
e.NewValues["threeline"] = postprocess(e.NewValues["threeline"].ToString());