Eventos de alteração de propriedade
Se você desejar que o controle para enviar notificações quando uma propriedade chamada PropertyName alterações, definir um evento chamado PropertyNameChanged e um método chamado OnPropertyNameChanged que dispara o evento.A convenção de nomeclatura do Windows Forms é acrescentar a palavra Alterado para o nome da propriedade.O tipo de delegado de evento associado para eventos de propriedade alterada é EventHandler, e o tipo de dados do evento é EventArgs. A classe base Control define muitos eventos de propriedade alterada, sistema autônomo BackColorChanged, BackgroundImageChanged, FontChanged, LocationChangede outros. Para obter informações detalhadas sobre eventos, consulte Tratamento e disparada de eventos e Eventos em controles Windows Forms.
Propriedade alterada eventos são úteis porque permitem que os consumidores de um controle de anexar manipuladores de eventos que respondem à alterar.Se seu controle precisa responder a um evento de propriedade alterada que gera, substituir o correspondente OnPropertyNameChanged método em vez de anexar um delegado ao evento.Um controle normalmente responde a um evento de propriedade alterada atualizando outras propriedades ou redesenhando algumas ou todas as sua superfície de desenho.
O exemplo a seguir mostra como a FlashTrackBar controle personalizado responde a alguns dos eventos propriedade alterada, ele herda de Control. For the complete sample, see Como: Criar um controle Windows Forms que mostra o andamento.
Protected Overrides Sub OnTextChanged(ByVal E As EventArgs)
MyBase.OnTextChanged(E)
Invalidate()
End Sub
Protected Overrides Sub OnBackColorChanged(ByVal E As EventArgs)
MyBase.OnTextChanged(E)
If (baseBackground IsNot Nothing) And Not ShowGradient Then
baseBackground.Dispose()
baseBackground = Nothing
End If
End Sub
protected override void OnTextChanged(EventArgs e) {
base.OnTextChanged(e);
Invalidate();
}
protected override void OnBackColorChanged(EventArgs e) {
base.OnTextChanged(e);
if ((baseBackground != null) && (!showGradient)) {
baseBackground.Dispose();
baseBackground = null;
}
}
Consulte também
Conceitos
Eventos em controles Windows Forms