現在、私はRowDataBoundに次のコードを持っている:GridViewの編集時にRowDataBoundを回避する方法は?
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Label groupID = (Label)e.Row.FindControl("idgroup");
LinkButton myLink = (LinkButton)e.Row.FindControl("groupLink");
myLink.Attributes.Add("rel", groupID.Text);
}
}
はしかし、私は編集リンクをクリックしたとき、それはそのコードを実行しようとするとエラーがスローされます。したがって、GridViewが読み取りモードの場合にのみ、そのコードをどのように実行できますか? e.Row.RowState
のチェックを追加
if (e.Row.RowState != DataControlRowState.Edit)
{
// Here logic to apply only on initial DataBinding...
}
編集リンクをクリックしてもこの条件を満たしています。したがって、編集中にコードを実行することは避けられません。その他のオプションは?ありがとうたくさん – aleafonso
eまたはe.Rowオブジェクトの他のプロパティをデバッグしてチェックして、行の編集ステータスを検出してそれに応じて行動できるかどうかを確認できますか? :) –
アドバイスをいただきありがとうございます!私はちょうどあなたが述べたようにe.Rowオブジェクトをデバッグして見てそれをソートしました。私はstackoverflowが私自身の質問に答えることができるようになるとすぐにそれを公開します。乾杯! – aleafonso