0

GroupingText のレンダリングをカスタマイズするために、ASP.NET Panel コントロールをサブクラス化しました。ただし、最終出力では問題なく表示されますが、デザイナーでは正しく表示されません。

私がやっていることのサンプルは次のとおりです。

デザイナーで正しく表示するために必要なことは他にありますか?

Imports System.Web.UI

Public Class CustomPanel
    Inherits Panel

    Public Overrides Sub RenderBeginTag(ByVal writer As System.Web.UI.HtmlTextWriter)
        Me.AddAttributesToRender(writer)
        Dim tagKey As HtmlTextWriterTag = Me.TagKey
        If (tagKey <> HtmlTextWriterTag.Unknown) Then
            writer.RenderBeginTag(tagKey)
        Else
            writer.RenderBeginTag(Me.TagName)
        End If
        Dim groupingText As String = Me.GroupingText
        If ((groupingText.Length <> 0) AndAlso Not TypeOf writer Is Html32TextWriter) Then
            writer.AddAttribute("class", "heading")
            writer.RenderBeginTag(HtmlTextWriterTag.Div)
            writer.Write(groupingText)
            writer.RenderEndTag()
        End If
    End Sub

End Class
4

1 に答える 1

1

おそらく、 「ASP.Net コントロールへのデザイン タイム サポートの追加」に関する MSDN の投稿を一通り見てみたいと思うでしょう。

また、堅牢な設計時のサポートを備えたカスタム サーバー コントロールを作成することは簡単なことではありません。UserControl を使用したり、デザイン時のサポートの欠如に対処したりできる場合は、より良い結果が得られます。

多くの場合、これは生計を立てるためにこれを行う人々に任せたほうがよい運動です。

于 2009-06-10T11:30:37.993 に答える