Pergunta

Como faço através de programação obter a resolução do ecrã no WP7?Aqui está um monte de links que obter o mesmo trabalho feito na área de trabalho do WPF e Silverlight, mas nenhum deles estão no Phone SDK.

Qualquer idéias?

http://social.msdn.microsoft.com/Forums/en-US/windowsphone7series/thread/f0639904-a368-44db-9ddd-efcaf8fc736e
http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/6b6b832f-0dfd-428c-84cd-b1b9e7f236cf
Como posso obter a tela ativa dimensões?
http://social.msdn.microsoft.com/Forums/en-US/windowsphone7series/thread/f0639904-a368-44db-9ddd-efcaf8fc736e

Foi útil?

Solução

Parece que o aplicativo.current.rootvisual.rendersize fornecerá essas informações.

Outras dicas

Eu uso isso:

this.ScreenWidth = System.Windows.Application.Current.Host.Content.ActualWidth;
this.ScreenHeight = System.Windows.Application.Current.Host.Content.ActualHeight;

Muitas maneiras de esfolar um aplicativo. Se for para xaml, você pode se ligar às propriedades do Layoutroot.

Height="{Binding ElementName=LayoutRoot,Path=ActualHeight}"

Eu não baixo/vote positivamente ainda(na verdade, agora eu posso, e eu fiz isso), mas eu gostaria de ressaltar que "Lucas Puplett"s de resposta, incluindo a Aplicação.Atual.Host.O conteúdo é o correcto, e não "Andréas Saudemont"s que aconselha RenderSize.

Vou usar nomes que são comumente usados em tutoriais ou aplicativos de exemplo do site do MSDN.

Eu digo que o Host.Atual é mais adequada, porque no início da aplicação, especialmente no WP7 (eu não sei como isso é "normal" SL3/SL4 no PC) - que é, por exemplo, na primeira página do construtor - o RenderSize propriedade AINDA NÃO está DEFINIDO corretamente, como o "RootVisual" do aplicativo está sendo construído e ainda não foram atribuídas na "App.xaml.cs".Pelo menos nesse ponto, o RenderSize=Tamanho{0,0}

Por outro lado, se o Aplicativo for iniciado corretamente, o Host.O conteúdo é definido para alguns phoneframe, que é corretamente completo de tamanho de tela e girado para a real posição da tela.Eu acho que no início é a partir tela inicial (vazio ou estático do arquivo JPG)

Se você deseja acessar o tamanho da tela de um jogo XNA, use isso:

graphics.GraphicsDevice.DisplayMode.Width

e

graphics.GraphicsDevice.DisplayMode.Height

Onde os gráficos são o gráfico do jogo atual!

Tela inteira:

(App.Current.RootVisual as FrameworkElement).ActualHeight
(App.Current.RootVisual as FrameworkElement).ActualWidth

Pagina atual:

Se você quiser saber o tamanho visível (levando em consideração o AppBar / SystemTray), basta pedir fora da página.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top