質問

asp.netフォーラムのすべての投稿にアンカーを付けたいです。すべてのフォーラムの投稿は、リピーターコントロールを使用してレンダリングされます。 asp.netで<a name="anchor_name"></a>をレンダリングするにはどうすればよいですか?

役に立ちましたか?

解決

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

PostIdは、アンカーに表示するプロパティの名前です。

他のヒント

これは、構文を確認するためにVSにいるわけではないので、正確なコードではありませんが、このようなものはあなたが行きたいと思うはずです。

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

System.Web.UI.WebControls.HyperLinkクラスを拡張し、UniqueIDプロパティをオーバーライドして実際のIDを返します:

override string UniqueID { get { return ID; }  }

リピーターのアイテムテンプレートでこの新しいユーザーコントロールを使用します。

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

ItemDataBoundの場合:

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

わかりました。この方法で解決しました:

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

Idはバインドされたエンティティのプロパティです。

リピーターのItemTempateの適切な場所に<a name="anchor_name"></a>を追加することで、トリックを実行できます。もう少し情報が役立つ場合があります。

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