HyperLinkDesigner.GetDesignTimeHtml Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém a marcação que é usada para renderizar o controlo associado no momento do design.
public:
override System::String ^ GetDesignTimeHtml();
public override string GetDesignTimeHtml();
override this.GetDesignTimeHtml : unit -> string
Public Overrides Function GetDesignTimeHtml () As String
Devoluções
Uma cadeia contendo a marcação usada para renderizar o controlo de hiperligação associado no momento do design.
Exemplos
O seguinte exemplo de código mostra como derivar a CustomHyperLinkDesigner classe a partir da HyperLinkDesigner classe. Sobrepõe o GetDesignTimeHtml método para fornecer um valor padrão para a Text propriedade se o valor original for Text uma cadeia vazia (""). Isto garante que o controlo associado será visível no momento do projeto.
Este exemplo de código faz parte de um exemplo maior fornecido para a HyperLinkDesigner classe.
// Derive the CustomHyperLinkDesigner from the HyperLinkDesigner.
public class CustomHyperLinkDesigner : HyperLinkDesigner
{
// Override the GetDesignTimeHtml to set the CustomHyperLink Text
// property so that it displays at design time.
public override string GetDesignTimeHtml()
{
CustomHyperLink hype = (CustomHyperLink)Component;
string designTimeMarkup = null;
// Save the original Text and note if it is empty.
string text = hype.Text;
bool noText = (text.Trim().Length == 0);
try
{
// If the Text is empty, supply a default value.
if (noText)
hype.Text = "Click here.";
// Call the base method to generate the markup.
designTimeMarkup = base.GetDesignTimeHtml();
}
catch (Exception ex)
{
// If an error occurs, generate the markup for an error message.
designTimeMarkup = GetErrorDesignTimeHtml(ex);
}
finally
{
// Restore the original value of the Text, if necessary.
if (noText)
hype.Text = text;
}
// If the markup is empty, generate the markup for a placeholder.
if(designTimeMarkup == null || designTimeMarkup.Length == 0)
designTimeMarkup = GetEmptyDesignTimeHtml();
return designTimeMarkup;
} // GetDesignTimeHtml
} // CustomHyperLinkDesigner
' Derive the CustomHyperLinkDesigner from the HyperLinkDesigner.
Public Class CustomHyperLinkDesigner
Inherits HyperLinkDesigner
' Override the GetDesignTimeHtml to set the CustomHyperLink Text
' property so that it displays at design time.
Public Overrides Function GetDesignTimeHtml() As String
Dim hype As CustomHyperLink = CType(Component, CustomHyperLink)
Dim designTimeMarkup As String = Nothing
' Save the original Text and note if it is empty.
Dim text As String = hype.Text
Dim noText As Boolean = (text.Trim().Length = 0)
Try
' If the Text is empty, supply a default value.
If noText Then
hype.Text = "Click here."
End If
' Call the base method to generate the markup.
designTimeMarkup = MyBase.GetDesignTimeHtml()
Catch ex As Exception
' If an error occurs, generate the markup for an error message.
designTimeMarkup = GetErrorDesignTimeHtml(ex)
Finally
' Restore the original value of the Text, if necessary.
If noText Then
hype.Text = text
End If
End Try
' If the markup is empty, generate the markup for a placeholder.
If ((designTimeMarkup = Nothing) Or _
(designTimeMarkup.Length = 0)) Then
designTimeMarkup = GetEmptyDesignTimeHtml()
End If
Return designTimeMarkup
End Function ' GetDesignTimeHtml
End Class
Observações
O GetDesignTimeHtml método gera a marcação em tempo de projeto para o controlo associado HyperLink . O método guarda primeiro cópias locais das Textpropriedades , NavigateUrl, e ImageUrl , bem como da Controls coleção filha. Fornece valores por defeito para estas propriedades se os valores originais estiverem null ou em branco. O GetDesignTimeHtml método chama então o GetDesignTimeHtml método base para gerar a marcação e restaura as propriedades e a coleção de controlos filhos aos seus valores originais, se necessário.