asp:GridView を使用して、asp.net、.aspx ページにデータ テーブルを表示しています。機密情報を含む列があります。ページ/グリッドビューが読み込まれたときに、このデータ列の巨大なリストが表示されないように、データをグレー表示するか、その他の方法で列を表示したいと思います。
ただし、特定の行で編集ボタンをクリックすると、列の機密データを表示して編集できるようにしたいと考えています。
これを達成する方法についてのアイデアはありますか?
asp:GridView を使用して、asp.net、.aspx ページにデータ テーブルを表示しています。機密情報を含む列があります。ページ/グリッドビューが読み込まれたときに、このデータ列の巨大なリストが表示されないように、データをグレー表示するか、その他の方法で列を表示したいと思います。
ただし、特定の行で編集ボタンをクリックすると、列の機密データを表示して編集できるようにしたいと考えています。
これを達成する方法についてのアイデアはありますか?
列をテンプレートに変換します。
その後、GridView テンプレートを編集できます。表示用と編集用のさまざまなテンプレートがあります。
また、編集ボタンがクリックされたときに true または false に設定されたページのプロパティを設定し、次のようにコントロールの可視性を切り替えることもできます (これは databind イベント中に自動的に機能します)。
private bool isEdit;
protected bool IsEditMode
{
get {return isEdit;}
set {isEdit=value;
}
次に、aspxで、目的のコントロールの表示を簡単に切り替えます
Visible='<%# IsEditMode %>'
グリッドビューのrowdataboundイベントを使用して仕事をしたいかもしれません。現在の行で特定のコントロール (おそらくテキストボックス) を見つけて、単に disabled = true に設定します。または、visible=false を設定して、その特定のコントロールをその行から非表示にすることもできます。私があなたを正しく理解しているなら、これはあなたの仕事をするはずです.