Compatibilidade gráfica com Microsoft .Net
-
16-09-2019 - |
Pergunta
Eu criei um pequeno aplicativo usando o Microsoft .Net. Não tenho problemas com as versões do MS .NET, o problema está com a própria versão 2.0.
É um problema gráfico. O aplicativo não mostra a mesma interface do usuário em dois Windows XP diferentes. Um com um estilo clássico e o outro é o estilo XP. Além disso, isso não mostra o mesmo sob o Vista.
A diferença não é grande (quero dizer, uma caixa de texto não se transforma em um botão!) Mas o design está completamente perdido (as cores mudam e a localização dos controles.) Isso significa que meu aplicativo parece ruim em outros computadores, o que é Não é bom, pois passei muito tempo projetando -o, embora possa ser usado sem problemas. Parece ruim
Como posso resolver esse problema? Para o design futuro de aplicativos? O WPF é uma solução ou é ainda pior?
Solução
Você tem várias opções:
- Desligue os estilos visuais e pareça UI clássica em todo o sistema operacional.
- Não use cores do sistema e corrigir todas as cores em números reais.
- Use a terceira festa Estruturas de interface do usuário skinnáveis como o desenvolvedor Express http://devexpress.com/products/net/controls/winforms/skins/
(fonte: Devexpress.com) - Vá para WPF - isso vai Parece o mesmo (o antialiasing pode diferir) em todo o sistema operacional que o apoia.
Outras dicas
Você já tentou usar Application.EnableVisualStyles
? Você isolou as diferenças entre os dois computadores XP diferentes? Não está totalmente claro para mim como é o seu aplicativo nos dois casos - se você pudesse adicionar uma captura de tela à sua pergunta, ajudaria muito.
Uma pergunta que você deve se perguntar é se você realmente deseja ignorar as configurações da interface do usuário que seus usuários fizeram. Se eles escolherem o estilo XP, você realmente deve ignorá -lo e mostrar a eles algum outro estilo?