GridVeiwで動的な表示項目を設定しようとしています。
デザインモードで、デフォルト表示項目(テンプレート列にラベルを配置)を
設定して、プログラムで動的な表示項目の設定を行っています。
(GridViewHoge.Columns.Add(hogeField))
1回目の実行
項目AAAが選択:デフォルト3件 特有項目5件 → OK
↓ GridViewHoge.Columns.RemoveAt(idx) で、特有項目を削除。
2回目の実行
項目BBBが選択:デフォルト3件 特有項目4件 → NG
2回目の実行で、テンプレート列に配置したラベルが取得できない
(FindControlで nothingが返却される)状況が発生してしまいます。
複数配置したラベルのうち、最後(右端のテンプレート列)のラベルが
取得できなくなり、3回実行すると、全てのラベルが取得できません。
ヘッダのテキストやカウントは正しいので、(デバッガでも確認)
削除するインデックスの指定は正しく行われています。
GridViewHoge.Columns.RemoveAt(idx)を実行すると、
テンプレート列のラベルは取得できなくなるのでしょうか。
GridViewHoge.Columns.RemoveAt(idx)を実行しなければ、ラベルは取得
できますが、前回実行時の追加列が削除できません。
どなたか同じ現象が発生しておられる方はおられますか。
また、解決策をご存知の方が折られれば教えてください。
よろしくお願いします。