Criando propriedades dinâmicas nos seus componentes
É comum criarmos componentes, CustomWebControls ou componentes para serem usados em ambientes de smart Client, aumentando a reutilização de funcionalidades e enriquecendo nossa interface, quer seja windows ou web.
Um recurso muito importante existente em alguns componentes que acompanham o framework é o recurso das propriedades dinâmicas. Alguns componentes, tais como o oledbconnection, possuem propriedades dinâmicas.
No exemplo do OLEDBConnection a propriedade dinâmica é ConnectionString. Isso significa que configurando a connectionstring adequadamente podemos guardar o valor da string de conexão fora da aplicação, no Web.Config no caso de uma aplicação web ou no arquivo de manifesto no caso de uma aplicação Windows.
É muito interessante que possamos fazer o mesmo para nossos próprios componentes, dando a possibilidade que nossas propriedades sejam configuradas como propriedades dinâmicas.
Isso é bem mais simples do que pode parecer inicialmente. Basta aplicarmos um atributo na propriedade que desejamos que se torne propriedade dinâmica. Veja um exemplo:
<RecommendedAsConfigurable(True)> _
Public Property MyProperty() As Integer
Get
'Insert code here.
Return 0
End Get
Set
'Insert code here.
End Set
End Property
Pronto, nossa propriedade aparecerá entre as propriedades dinâmicas na janela de propriedades.