コントロールを設計していますが、サーバー コントロールを含むことができるテキスト プロパティを持つクラスから継承する必要があります。
これは、私が説明しようとしていることを説明するための例です
<asp:myCustomControl id="myCustomControl1" runat="server" someProperty="something">
<asp:hyperlink id="myCustomControl1Hyperlink" runat="server" navigateUrl="someUrl">
Click here
</asp:hyperlink>
</asp:myCustomControl>
Protected Overrides Sub Render( _
ByVal writer As HtmlTextWriter)
If Not String.IsNullOrEmpty(Text) Then
writer.Write( _
"some html" + _
Text + _
"some other html"
)
End If
End Sub
これの目標は、コントロールのプロパティrenderを表示しながら、コントロールの関数でコントロールをレンダリングする方法を決定できるようにすることです。Text
私の最初の試みは、継承することでした。これにより、タグを問題なく内部にliteral書き込むことができます。しかし、最近、タグごとにタグ<a>を変更する必要があり、例外が発生します。<a><asp:hyperlink>'{0}' does not allow child controls.
そこで、 から継承するように変更してみましpanelたが、今回はレンダリング関数でTextプロパティも Me.Text も存在しないため使用できません。