Domanda

Mi piacerebbe fare ancore ad ogni post nel mio forum asp.net. Il post di ogni forum viene reso usando il controllo del ripetitore. Come posso eseguire il rendering <a name="anchor_name"></a> in asp.net?

È stato utile?

Soluzione

<a name='<%# Eval("PostId") %>' />

dove PostId è il nome della proprietà che si desidera visualizzare nella propria ancora.

Altri suggerimenti

Questo non sarà un codice esatto in quanto non sono in VS per garantire la sintassi, ma qualcosa del genere dovrebbe darti dove volevi andare.

<a name="<%# Bind('PostId') %>" runat="server" />

Estendi la classe System.Web.UI.WebControls.HyperLink e sovrascrivi la proprietà UniqueID per restituire l'ID effettivo:

override string UniqueID { get { return ID; }  }

Usa questo nuovo controllo utente nel modello di elemento del ripetitore.

<MyPrefix:MyHyperLink ID="IDOfYourHyperLink" ... />

Su ItemDataBound fare:

(e.Item.FindControl("IDOfYourHyperLink") as MyHyperlink).ID = NowIKnowWhatToUseHere;

Ok. L'ho risolto in questo modo:

<a name='<%# DataBinder.Eval(Container.DataItem, "Id") %>' />

dove Id è la proprietà dell'entità vincolata.

L'aggiunta di <a name="anchor_name"></a> in ItemTempate del ripetitore nel punto appropriato dovrebbe fare il trucco. Un po 'più di informazioni potrebbero aiutare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top