ControlBuilder.InDesigner 属性

定义

返回 ControlBuilder 是否正在设计器中运行。Returns whether the ControlBuilder is running in the designer.

protected:
 property bool InDesigner { bool get(); };
protected bool InDesigner { get; }
member this.InDesigner : bool
Protected ReadOnly Property InDesigner As Boolean

属性值

如果 ControlBuilder 正在设计器中运行,则为 true;否则为 falsetrue if the ControlBuilder is running in the designer; otherwise, false.

示例

下面的示例使用调用 NeedsTagInnerText 方法时的 InDesigner 属性。The following example uses the InDesigner property when the NeedsTagInnerText method is called. 当控件附加了此生成器时,NeedsTagInnerText 方法将通过设计器确定是否正在设计时访问该控件。When a control has this builder attached to it, the NeedsTagInnerText method 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 属性设置为 false,则会引发 ExceptionIf the InDesigner property is set to false, an Exception is thrown. 否则,将在 SetTagInnerText 调用时返回控件的内部文本。Otherwise, the inner text of the control is returned on the SetTagInnerText call.

[AspNetHostingPermission(SecurityAction.Demand, 
    Level=AspNetHostingPermissionLevel.Minimal)]
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.");
        else
            _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.")
       Else
         _innerText = text
       End If
    End Sub
    
End Class

适用于