ControlBuilder.NeedsTagInnerText 方法


判斷控制項產生器是否需要取得它的內部文字。Determines if the control builder needs to get its inner text. 如果是,必須呼叫 SetTagInnerText(String) 方法。If so, the SetTagInnerText(String) method must be called. 此方法由 ASP.NET 網頁架構呼叫。This method is called by the ASP.NET page framework.

 virtual bool NeedsTagInnerText();
public virtual bool NeedsTagInnerText ();
abstract member NeedsTagInnerText : unit -> bool
override this.NeedsTagInnerText : unit -> bool
Public Overridable Function NeedsTagInnerText () As Boolean



如果控制項產生器需要取得它的內部文字,則為 truetrue if the control builder needs to get its inner text. 預設為 falseThe default is false.


InDesigner當呼叫方法時,下列範例會使用屬性 NeedsTagInnerTextThe following example uses the InDesigner property when the NeedsTagInnerText method is called. 當控制項附加此產生器時, NeedsTagInnerText 會決定是否要在設計階段透過設計工具存取控制項。When a control has this builder attached to it, the NeedsTagInnerText determines whether the control is being accessed at design-time through a designer. NeedsTagInnerText會傳回屬性的值 InDesigner ,然後 SetTagInnerText 呼叫方法。The NeedsTagInnerText returns the value of the InDesigner property, and then the SetTagInnerText method is called. 如果 InDesigner 屬性設定為 falseException 就會擲回。If the InDesigner property is set to false, an Exception is thrown. 否則,會在呼叫時傳回控制項的內部文字 SetTagInnerTextOtherwise, the inner text of the control is returned on the SetTagInnerText call.

public sealed class MyControlControlBuilder : ControlBuilder
    private string _innerText;

    public override bool NeedsTagInnerText()
        return InDesigner;

    public override void SetTagInnerText(string text)
        if (!InDesigner)
            throw new Exception("The control is not in design mode.");
            _innerText = text;
<AspNetHostingPermission(SecurityAction.Demand, _
  Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class MyControlControlBuilder
  Inherits ControlBuilder
    Private _innerText As String
    Overrides Public Function NeedsTagInnerText() As Boolean
      Return InDesigner
    End Function
    Overrides Public Sub SetTagInnerText(ByVal text As String)        
       If InDesigner = False
         Throw New System.Exception("The control is not in design mode.")
         _innerText = text
       End If
    End Sub
End Class


內部文字是控制項的開頭和結束記號之間的文字。The inner text is the text between the opening and closing tags of the control.

ASP.NET 網頁架構在剖析期間會呼叫這個方法,而不是直接在您的程式碼中呼叫。This method is called by the ASP.NET page framework during parsing and is not intended to be called directly in you code.