Question

Il n'y a pas asp:. HiddenField qui peut être utilisé dans un GridView alors je me demandais ce qui fonctionnerait similaire à cette

Mon raisonnement de vouloir c'est que j'ai un ButtonField qui déclenche une OnRowCommand. De là, je peux comprendre quelle ligne a été sélectionnée, mais je ne peux pas récupérer la valeur de texte à partir du ButtonField pour voir les données qui a été lié à lui (par DataTextField).

Ma solution à c'était d'avoir une BoundField et juste récupérer la valeur de texte à partir de ce lieu, parce que je savais déjà quelle ligne a été sélectionnée. Cela a fonctionné, mais j'ai besoin d'être caché.

Quelqu'un a suggéré d'utiliser un HiddenField niché dans un TemplateField, mais j'eu des problèmes récupérer la valeur de texte de cette HiddenField. Y at-il un moyen d'accéder au contrôle dans le TemplateField pour obtenir la valeur de texte de la HiddenField?

Si quelqu'un a des suggestions pour des solutions de rechange qui seraient super aussi.

Merci,
Matt

Était-ce utile?

La solution

Vous pouvez utiliser le DataKeyNames propriété sur le Gridview.

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

et vous pouvez y accéder comme ceci:

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

Autres conseils

Vous pouvez utiliser un champ de modèle avec le CommandArgument égal au l'ID de l'enregistrement / ligne.

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

Ensuite, en cas de traitement de commande de ligne, vous pouvez obtenir cette valeur par e.CommandArgument

est-il possible d'ajouter une autre colonne d'identité, en tant que représentant unique pour un enregistrement (ligne)? Ce particulier colonne ID peut être réglée avec style:. Affichage = none pour le cacher, mais l'ID est à l'intérieur du formulaire HTML

et alors vous pouvez récupérer la valeur de cette colonne particulière d'identification à traiter plus loin.

espérons que cette aide,

hadi

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top