Condividi tramite


ChtmlTextWriter.WriteBreak Metodo

Definizione

Scrive un elemento br nel flusso di output cHTML.

public:
 override void WriteBreak();
public override void WriteBreak ();
override this.WriteBreak : unit -> unit
Public Overrides Sub WriteBreak ()

Esempio

In questa sezione sono riportati due esempi di codice. Il primo esempio di codice illustra come creare una classe cHTML e proprietà personalizzate. Il secondo esempio di codice illustra come usare una classe personalizzata in una pagina Web.

Per usare la scheda personalizzata, aggiungere il codice seguente al file a livello di computer appropriato nella sottodirectory per il browser della directory di configurazione di .NET Framework o a un file del browser personalizzato ChtmlSimplelabelAdapter nella directory App_Browsers nella radice dell'applicazione Web.

<controlAdapters>
   <adapter controlType="AspNet.Samples.SimpleLabel"
   adapterType="AspNet.Samples.ChtmlSimpleLabelAdapter" />
</controlAdapters>

Nell'esempio di codice seguente viene illustrato come creare una classe di adapter cHTML denominata per una classe denominata ChtmlSimpleLabelAdapterSimpleLabel. Crea una proprietà personalizzata Control che consente alla classe di accedere ai membri della SimpleLabel classe e quindi esegue l'override ChtmlSimpleLabelAdapter del Render metodo. Nell'override si verificano le operazioni seguenti:

  • Crea un riferimento a un ChtmlTextWriter oggetto denominato , wderivato dall'oggetto HtmlTextWriter passato come writer parametro per il Render metodo .

  • Crea una stringa e lo imposta uguale al SimpleLabel.Text valore.

  • Chiama il EnterStyle metodo per applicare gli stili definiti dalla ControlStyle proprietà dell'etichetta al flusso di output cHTML.

  • Scrive il valore della Text proprietà nel flusso e chiude il blocco di stile chiamando il ExitStyle metodo .

  • Chiama il metodo per eseguire il WriteBreak rendering di un br elemento nel flusso di output dopo il rendering del testo e degli stili.

// Create a custom CHTML Adapter for a 
// SimpleLabel class.
public class ChtmlSimpleLabelAdapter : WebControlAdapter
{
    // Create the Control property to access
    // the properties and methods of the
    // SimpleLabel class.
    protected SimpleLabel Control
    {
        get
        {
            return (SimpleLabel)base.Control;
        }
    }

    // Override the Render method to render text
    // in CHTML with the style defined by the control
    // and a <br> element after the text and styles
    // have been written to the output stream. 
    protected override void Render(HtmlTextWriter writer)
    {
        ChtmlTextWriter w = new ChtmlTextWriter(writer);
        string value = Control.Text;

        // Render the text of the control using
        // the control's style settings.
        w.EnterStyle(Control.ControlStyle);
        w.Write(value);
        w.ExitStyle(Control.ControlStyle);
        w.WriteBreak();
    }
}
  ' Create a custom CHTML Adapter for a 
  ' class, named SimpleLabel.
  Public Class ChtmlSimpleLabelAdapter
       Inherits WebControlAdapter

    ' Create the Control property to access
    ' the properties and methods of the
    ' SimpleLabel class.
    Protected Shadows ReadOnly Property Control() As SimpleLabel
       Get
          Return CType(MyBase.Control, SimpleLabel)
       End Get
    End Property
 
 
    ' Override the Render method to render text
    ' in CHTML with the style defined by the control
    ' and a <br> element after the text and styles
    ' have been written to the output stream. 
      Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)
          Dim w As ChtmlTextWriter = New ChtmlTextWriter(writer)
          Dim value As String = Control.Text

          ' Render the text of the control using
          ' the control's style settings.
          w.EnterStyle(Control.ControlStyle)
          w.Write(value)
          w.ExitStyle(Control.ControlStyle)
          w.WriteBreak()

      End Sub
End Class

Nell'esempio seguente viene illustrato come usare la SimpleLabel classe in una pagina Web.

<%@ Page Language="C#" %>
<%@ Import Namespace="AspNet.Samples" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

  protected void Page_Load(object sender, EventArgs e)
  {
    SimpleLabel sl = new SimpleLabel();
    sl.ID = "SimpleLabel1";
    sl.Text = "SimpleLabel Text";
    PlaceHolder1.Controls.Add(sl);

  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>CHtmlTextWriter Example</title>
</head>
<body>
    <form id="form1" runat="server" >
    <div>
      <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>    
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB"   %>
<%@ Import Namespace="AspNet.Samples" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

    Dim sl As SimpleLabel = New SimpleLabel()
    sl.ID = "SimpleLabel1"
    sl.Text = "SimpleLabel Text"
    PlaceHolder1.Controls.Add(sl)
    
  End Sub
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>CHtmlTextWriter Example</title>
</head>
<body>
    <form id="form1" runat="server" >
    <div>
      <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>    
    </div>
    </form>
</body>
</html>

Commenti

Utilizzare il WriteBreak metodo per inserire un'interruzione di riga in un flusso di cHTML.

Si applica a

Vedi anche