SelectorRapidAccessKeyBehavior em ComboBox para Silverlight 3

Acabei de publicar mais uma behavior para Silverlight 3 na Microsoft Expression Gallery. Assim como a anterior, essa behavior serve para melhorar a usabilidade de controles em Silverlight, deixando-os com comportamento semelhante ao dos controles nativos para aplicações desktop. O que essa behavior faz é selecionar ítens no controle ao qual está associada, de acordo com a letra ou número que foi pressionado no teclado.

SelectorRapidAccessKeyBehavior no Microsoft Expression Gallery

Essa behavior só pode ser associada a controles do tipo Selector, como ComboBox e ListBox. Ela funciona no ComboBox mesmo quando está aberto.

É possível definir qual propriedade dos ítems do controle será utilizada para fazer a busca. Com isso, você pode popular o combo com suas classes, utilizando data binding, e definir na behavior que a busca será feita na propriedade Nome, por exemplo. Por padrão, a behavior vai tentar utilizar a propriedade Content.

image

Se a propriedade definida na behavior não for encontrada em algum ítem, esse ítem será ignorado.

A behavior converte o valor da propriedade para string antes de verificar se começa com a tecla pressionada, portanto funciona também para propridades de tipos numericos ou enumeradores.

O código fonte da behavior e da aplicação de exemplo estão publicados na Microsoft Expression Gallery

http://gallery.expression.microsoft.com/en-us/RapidAccessKey

Qualquer sugestão de melhoria ou correção de bug é bem vinda.

Webcast MSDN sobre as novidades do Silverlight 3

Galera,

Acabou de ser publicado no Media Center do MSDN Brasil um webcast que fiz explicando e demonstrando algumas das novidades do Silverlight 3. No Media Center há também outros webcasts que foram gravados durante a semana especial sobre Silverlight. Sigam os links e assistam.

Espero que seja bastante útil.

image

Media Center MSDN Brasil : Webcasts

Link direto - MSDN Webcast : Silverlight 3.0 para Desenvolvedores - Kelps

MouseWheelScrollBehavior para Silverlight 3

Acabei de publicar uma behavior na galeria do Microsoft Expression. Como já deve ter ficado claro pelo título do post, esta behavior implementa scroll em controles pela roda do mouse. Agora podemos ter esse recurso em nossas aplicações sem precisar ficar escrevendo código (aliás, eu acho que o controle ScrollViewer já deveria ter essa implementação nativamente, mas…).

image

Esta behavior pode ser aplicada a qualquer controle. Se o controle for um ScrollViewer ou tiver algum ScrollViewer em seu template, a behavior se encarregará de efetuar o scroll, repondendo ao evento MouseWheel (que é novo no Silverlight 3).

Como a behavior está utilizando o evento MouseWheel (e não javascript), a behavior também funciona normalmente quando a aplicação é executada fora do browser. Não fiz nenhum teste para ver como ela se comporta com aplicações WPF, mas acredito que também deva funcionar normalmente.

É possível configurar qual direção de scroll deve ser utilizada ou deixar a behavior decidir automaticamente (padrão). Se estiver no automático, a behavior vai tentar primeiro fazer rolagem vertical e, se não conseguir, vai tentar fazer rolagem horizontal.

Também é possível inverter a direção do scroll

image

O código fonte da behavior e da aplicação de exemplo estão publicados na galeria do Expression.

http://gallery.expression.microsoft.com/en-us/MouseWheelScroll

Qualquer sugestão de melhoria e correção de bug é bem vinda.

Sketchflow - Exemplo de Behavior para navegação condicional

Olá galera,

No Microsoft ReMIX desse ano mostramos alguns recursos novos do Silverlight 3 e Blend 3 e, durante a apresentação sobre Sketchflow, me perguntaram se havia algum jeito de fazer navegação condicional em um protótipo. A resposta? Depende. A explicação que dei foi mais ou menos a seguinte:

Sem customização nenhuma, o Sketchflow não provê um meio de fazer navegação condicional, mas, como as ações do Sketchflow são implementadas utilizando Behaviors, é possível criar sua prórpia navegação condicional para projetos Sketchflow. Será necessário um desenvolvedor para fazer isso, mas a Behavior que ele produzirá poderá ser reutilizada em seus projetos futuros sem que seja necessário recorrer ao desenvolvedor novamente (a não ser que haja bugs, é claro).

Eu pretendia fazer essa behavior e escrever um post explicando mas Christian Schormann (Program Manager do Blend 3) foi mais rápido do que eu. Ele publicou ontem em seu blog um post chamado Sketchflow : Conditional Navigation Behavior Sample, que eu espero que possa ser útil para vocês. O post está em inglês.

Se tiverem alguma dúvida sobre como isso funciona, como utilizar ou até mesmo como fazer suas próprias Behaviors, sintam-se a vontade para postar suas perguntas aqui.

Inscrições abertas para o Microsoft ReMIX Brasil 2009

Galera,

Já estão abertas as inscrições para o Remix Brasil 2009. O evento será no Campos da UNIP Paraíso, no dia 26/Agosto (segundo dia do TechEd).

Este ano o ReMIX acontecerá em paralelo ao TechEd Brasil 2009. Há 3 opções de inscrição: Somente ReMIX, somente TechEd e ReMIX + TechEd.

No ReMIX deste ano será mostrado o processo completo de desenvolvimento de uma aplicação utilizando Silverlight 3, desde a concepção, escolha das tecnologias (Silverlight 3, Live, Azure…), wireframes com sketchflow, aplicação de design com Blend 3, Desenvolvimento com Visual Studio e deploy na nuvem utilizando Windows Azure.

Serão 5 palestras, cada uma com um foco e mostrando uma parte do processo. Entrem no site e vejam mais detalhes. Eu participarei de algumas das palestras mostrando como essa aplicação foi desenvolvida e os recursos que foram utilizados em cada estágio.

Vejos vocês lá.