Publiquei mais uma behavior no Expression Gallery hoje. Dessa vez foi uma behavior bem simples que serve para mudar o estado de full screen da aplicação. Essa behavior é do tipo Action, ou seja, você pode escolher qual trigger vai dispará-la. A trigger padrão que o Blend coloca é a EventTrigger, mas qualquer outra trigger pode ser utilizada.
A behavior também tem um segunda propriedade que serve para definir que a aplicação deve continuar em full screen caso perda o foco. Esse comportamento é uma das novidades do Silverlight 4 e pode ser usado, por exemplo, para deixar um vídeo rodando em fullscreen em um monitor enquanto trabalhamos no outro.
O código usado para realizar essas tarefas é muito simples, como pode ser visto abaixo:
//Código para mudar o fullscreen Application.Current.Host.Content.IsFullScreen = !Application.Current.Host.Content.IsFullScreen; //Código para manter a janela em fullscreen em outro monitor Application.Current.Host.Content.FullScreenOptions = System.Windows.Interop.FullScreenOptions.StaysFullScreenWhenUnfocused;
Seguem abaixo os links:
- Página com exemplo no Expression Gallery : http://gallery.expression.microsoft.com/en-us/FullScreenAction
- Projeto no Codeplex : http://cnzklibrary.codeplex.com/
O projeto do Codeplex onde está essa behavior vai continuar recebendo adições como essa. Tenho várias outras behaviors que estou planejando migrar pra lá assim como bibliotecas de controles e helpers que também terão versões para WPF e ASP.NET quando fizer sentido.