TableDesigner.GetDesignTimeHtml Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene il codice HTML usato per rappresentare il controllo in fase di progettazione.
public:
override System::String ^ GetDesignTimeHtml();
public override string GetDesignTimeHtml ();
override this.GetDesignTimeHtml : unit -> string
Public Overrides Function GetDesignTimeHtml () As String
Restituisce
Codice HTML utilizzato per rappresentare il controllo in fase di progettazione.
Esempio
Nell'esempio di codice seguente viene illustrato come eseguire l'override del GetDesignTimeHtml metodo per visualizzare righe e celle per la classe nell'area StyledTable
di progettazione.
Try
Nel blocco il codice verifica se la tabella contiene righe o celle e, in caso contrario, crea una riga ed esegue un ciclo per creare due celle per la riga, insieme al testo segnaposto da visualizzare in ogni cella in fase di progettazione. Se la tabella non è vuota, ma una riga è, il codice esegue lo stesso ciclo per creare e popolare le celle.
Finally
Nel blocco il codice restituisce i valori allo stato originale.
' Override the GetDesignTimeHtml method to display
' placeholder text at design time for the
' rows and cells of the StyledTable class.
Public Overrides Function GetDesignTimeHtml() As String
Dim sTable As StyledTable = CType(Component, StyledTable)
Dim designTimeHTML As String
Dim rows As TableRowCollection = sTable.Rows
Dim cellsWithDummyContents As ArrayList = Nothing
Dim emptyTable As Boolean = rows.Count = 0
Dim emptyRows As Boolean = False
Dim counter As Integer = 1
Dim numcells As Integer = 2
Try
' Create two cells to display
' in a row at design time.
If emptyTable Then
Dim row As TableRow = New TableRow()
rows.Add(row)
Dim i As Integer
For i = 0 To numcells - 1
Dim c As TableCell = New TableCell()
c.Text = "Cell #" & counter.ToString()
counter += 1
rows(0).Cells.Add(c)
Next i
Else
emptyRows = True
Dim j As Integer
For j = 0 To rows.Count - 1
If rows(j).Cells.Count <> 0 Then
emptyRows = False
Exit For
End If
Next j
If emptyRows = True Then
Dim k As Integer
For k = 0 To numcells - 1
Dim c As TableCell = New TableCell()
c.Text = "Cell #" & counter.ToString()
counter += 1
rows(0).Cells.Add(c)
Next k
End If
End If
If emptyTable = False Then
' If the rows and cells were defined by the user, but the
' cells remain empty this code defines a string to display
' in them at design time.
Dim row As TableRow
For Each row In rows
Dim c As TableCell
For Each c In row.Cells
If ((c.Text.Length = 0) AndAlso (c.HasControls() = False)) Then
If cellsWithDummyContents Is Nothing Then
cellsWithDummyContents = New ArrayList()
End If
cellsWithDummyContents.Add(c)
c.Text = "Cell #" & counter.ToString()
counter += 1
End If
Next c
Next row
End If
' Retrieve the design-time HTML for the StyledTable class.
designTimeHTML = MyBase.GetDesignTimeHtml()
Finally
' If the StyledTable was empty before the dummy text was added,
' restore it to that state.
If emptyTable Then
rows.Clear()
Else
' Clear the cells that were empty before the dummy text
' was added.
If Not (cellsWithDummyContents Is Nothing) Then
Dim c As TableCell
For Each c In cellsWithDummyContents
c.Text = [String].Empty
Next c
End If
If emptyRows Then
rows(0).Cells.Clear()
End If
End If
End Try
Return designTimeHTML
End Function
Commenti
Il GetDesignTimeHtml metodo garantisce che la tabella abbia almeno una riga e una cella e che le celle contengano un testo per la visualizzazione in fase di progettazione.