Tenho um aplicativo de desktop que envio aos clientes. Para um cliente em todas as máquinas, parece consistentemente errado em sua resolução. Eu criei uma máquina virtual e a configurei para a resolução deles e, claro, tudo parece bem. Eles estão em 1280x1024. O aplicativo é executado em cerca de três dúzias de outras máquinas em outros clientes. Pedi para eles pegarem uma tela impressa, aqui está: captura de tela do cliente malformada em seu computador tela como fica no desenvolvimento, teste e outros computadores clientes
Preciso ajudar! Não tenho ideia do porquê / do que é necessário aqui.
Respostas:
0 para resposta № 1Verifique as configurações de DPI no Windows.
Windows 7: http://www.lawfirmsoftware.com/support/change_dpi_settings_windows_7.htm
Windows 8: http://www.eightforums.com/tutorials/28310-dpi-scaling-size-change-displays-windows-8-1-a.html
Windows 10: http://www.tenforums.com/tutorials/5990-dpi-scaling-level-displays-change-windows-10-a.html
Veja também esta pergunta sobre como atualizar seu próprio aplicativo: Desativar o reconhecimento de DPI para o aplicativo WPF
0 para resposta № 2
O modo de escala automático está definido como FONT. Devo defini-lo como NONE? Não tenho certeza do que essa configuração faz ... Estou no VS 2015. - Computação Smomputation
Como uma primeira etapa, recomendo que você declare que seu aplicativo reconhece DPI. Isso é feito por meio do app.manifest Arquivo.
Você pode acessar este arquivo no VS via:
Menu Projeto-> Propriedades ProjName-> Guia Aplicativo-> Botão Exibir Configurações do Windows
Procure este bloco de código no arquivo:
<!--
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
</windowsSettings>
</application>
-->
Esta seção é comentada por padrão. Para ativá-lo, exclua a primeira linha (<!--
) e a última linha (-->
).
Isso impedirá a virtualização de DPI pelo sistema operacional, que pode ser considerada como um dimensionamento de bitmap do formulário exibido e seus componentes.
Se a exibição resultante ainda estiver confusa, tente definir o Form.AutoScaleMode
para qualquer um Dpi
ou None
.
-1 para resposta № 3
Seu erro é muito comum. Você só precisa alterar a propriedade de alinhamento e desabilitar a superior.