質問

何のASPはありません:私はこれに似て働くだろうかと思ったので、GridViewのに使用することができますのHiddenField

これを望むための私の推論は、私がOnRowCommandをトリガーButtonFieldを持っています。そこから私は、選択された行を見つけ出すことができますが、私は(DataTextField経由)にバインドされたデータを見るためにButtonFieldからテキスト値を取得することはできません。

これを

私のソリューションは、私がすでに選択された行を知っていたことから、BoundFieldを持っているだけではなく、そこからテキスト値を取得することでした。これは働いていたが、私はそれを非表示にする必要があります。

誰かがTemplateField内にネストのHiddenFieldを使用して提案し、私はそれのHiddenFieldからテキスト値を取得するトラブルがありました。 HiddenFieldのテキスト値を取得するためにTemplateField内のコントロールにアクセスするためのいくつかの方法がありますか?

誰もが同様に素晴らしいことだ代替のための任意の提案を持っている場合。

おかげで、
マット

役に立ちましたか?

解決

あなたは DataKeyNamesを使用することができますGridViewの上のプロパティます。

gridView.DataKeyNames = { "values", "you", "want "};

と、あなたは、このようにそれらにアクセスすることができます:

gridView.DataKeys[rowId].Values["value"];

他のヒント

あなたはレコード/行のIDに等しいcommandArgumentでテンプレートのフィールドを使用することができます。

<ItemTemplate>
  <asp:Button ID="Button1" runat="server" CausesValidation="false" 
      CommandName="SomeCommand" Text="Button" CommandArgument='<%# Eval("SomeID") %'></asp:LinkButton>
</ItemTemplate>

次に、行コマンドハンドリングイベントであなたがe.CommandArgumentでその値を取得することができます。

は、レコード(行)のためのユニークな代表として、他のIDの列を追加することができますか?その特定のIDの欄には、スタイルを設定することができます。それを隠すために=なし、ディスプレイ、まだIDは、HTMLフォーム内にある

、その後、あなたはさらに処理するために、その特定のID列の値を取得することができます。

これが役に立てば幸い、

ハディ

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top