Implementação do método de controles personalizados

Um método é implementado em um controle da mesma maneira que um método a ser implementado em qualquer outro componente.

No Visual Basic, se um método é necessária para retornar um valor, ele é implementado como um Public Function. Se nenhum valor for retornado, ele é implementado como um Public Sub. Métodos são declarados usando a seguinte sintaxe:

Public Function ConvertMatterToEnergy(Matter as Integer) As Integer
   ' Conversion code goes here.
End Function

Como as funções retornam um valor, eles devem especificar um tipo de retorno, como, por exemplo, integer, string, objeto e assim por diante. Os argumentos Function ou Sub tirar de procedimentos, se houver, também deve ser especificado.

C# não faz distinção entre funções e procedimentos, como o Visual Basic. Um método retorna um valor ou retorna void. A sintaxe para declarar um método público C# é:

public int ConvertMatterToEnergy(int matter)
{
   // Conversion code goes here.
}

Quando você declara um método, você deve declare todos os argumentos como tipos de dados explícito, sempre que possível. Argumentos que levam as referências de objeto devem ser declarados como tipos de classe específica — por exemplo, As Widget em vez de As Object. No Visual Basic, a configuração padrão Option Strict automaticamente impõe essa regra.

Argumentos digitados que muitos erros de desenvolvedor ser detectada pelo compilador, em vez de em tempo de execução. O compilador captura sempre os erros, enquanto o tempo de execução de teste é apenas tão boa quanto a suíte de testes.

Métodos sobrecarregados

Se você quiser permitir que os usuários do seu controle fornecer diferentes combinações de parâmetros para um método, fornecem várias sobrecargas do método, usando os tipos de dados explícito. Evitar a criação de parâmetros declarados As Object que pode conter qualquer tipo de dados, como isso pode levar a erros não podem ser detectados no teste.

Observação sobre o Visual BasicObservação sobre o Visual Basic

O tipo de dados universal no common language runtime é Object em vez de Variant. Variantfoi removida do idioma. Para obter mais informações, consulte Alterações de tipos de dados universais para usuários do Visual Basic 6.0 e Alterações de tipos de dados universais para usuários do Visual Basic 6.0.

Por exemplo, o Spin método de uma empresa de consultoria Widget controle pode permitir que qualquer especificação direta da direção de rotação e a velocidade ou a especificação de outro Widget o objeto do qual momentum angular é ser absorvidos:

Overloads Public Sub Spin( _
   ByVal SpinDirection As SpinDirectionsEnum, _
   ByVal RevolutionsPerSecond As Double)
   ' Implementation code here.
End Sub
Overloads Public Sub Spin(ByVal Driver As Widget) _
   ' Implementation code here.
End Sub
public void Spin(SpinDirectionsEnum spinDirection, double revolutionsPerSecond)
{
   // Implementation code here.
}

public void Spin(Widget driver)
{
   // Implementation code here.
}

Consulte também

Conceitos

Eventos e representantes

Outros recursos

Propriedades de controles do Windows Forms