2012-02-28 8 views
1

Asp.Net GridViewで名前またはIDでセルを識別して参照する方法があるのだろうかと思っていました。インデックスを使用せずにASP.NET GridViewのセルを参照するには?

私の場合、私はTemplateFieldの中のImageButtonコントロールにアクセスしたいというこのような状況があります。

ImageButton ibtStatus = (ImageButton)e.Row.Cells[8].FindControl(ibtIDStatus); 

しかし、私はこのようなセルを参照したいと思います:

私のコードは次のようである

ImageButton ibtStatus = (ImageButton)e.Row.Cells["MyCell"].FindControl(ibtIDStatus); 
名、HeaderTextまたはいずれかによってセルを参照する方法

そのインデックスではない他の方法ですか?

編集:私はVisual Studio 2005と.NET 2.0を使用しています。

+2

なぜ特定のセル内でコントロールを検索したいですか? Row要素(e.Row.FindControl( "yourControlID"))を検索することで同じ結果が得られます。 – Meryovi

+0

ハム...私は私の例に満足していなかったと思う。私はまた 'e.Row.Cells [4] .Visible = false'のようないくつかの特定のCellを非表示にしたいと思いますか? –

答えて

1

セルインデックスをバイパスして問題なく実行できるはずです。

ImageButton ibtStatus = (ImageButton)e.Row.FindControl(ibtIDStatus); 
0

私はあなたがこのコードをGridView_RowDataBoundイベントに書いていると信じています。 ?

コードを書く方が良いです。

ImageButton ibtStatus = e.Row.FindControl("ibtIDStatus") as ImageButton; 
if(ibtStatus !=null) 
{ 
// Write your code here. 
} 

私はこれがあなたを助けてくれることを願っています。

関連する問題