Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual Studio C#桌面应用程序GUI在不同的计算机上呈现不同?_C#_Windows_User Interface_Visual Studio 2012_Rendering - Fatal编程技术网

Visual Studio C#桌面应用程序GUI在不同的计算机上呈现不同?

Visual Studio C#桌面应用程序GUI在不同的计算机上呈现不同?,c#,windows,user-interface,visual-studio-2012,rendering,C#,Windows,User Interface,Visual Studio 2012,Rendering,所以我有一个我制作的桌面应用程序,我正试图安装在一堆客户端机器上。用户界面在我的机器上看起来很好,当我把它安装在客户机A的计算机上时,它在那里看起来也很好。然而,我去安装它在客户端B的计算机和客户端B的计算机上的应用程序看起来很奇怪 1) 我有一个树状的形状,它没有一个加号来放下所有的“孩子们”,而是有一个奇怪的小8位星星 2) 另外,我在界面上有一个标签,标签的边框都是黑色的,标签上的颜色不正确 基本上,界面看起来像是来自Windows98的,我不知道会出什么问题。有什么建议吗 这是正常的行为

所以我有一个我制作的桌面应用程序,我正试图安装在一堆客户端机器上。用户界面在我的机器上看起来很好,当我把它安装在客户机A的计算机上时,它在那里看起来也很好。然而,我去安装它在客户端B的计算机和客户端B的计算机上的应用程序看起来很奇怪

1) 我有一个树状的形状,它没有一个加号来放下所有的“孩子们”,而是有一个奇怪的小8位星星

2) 另外,我在界面上有一个标签,标签的边框都是黑色的,标签上的颜色不正确


基本上,界面看起来像是来自Windows98的,我不知道会出什么问题。有什么建议吗

这是正常的行为。即使在WPF上,提供的所有控件都有特定于操作系统设置的主题,为了在不同版本之间保持相同的外观,您必须提供自己的主题

还有一件事,WPF单位(1/96英寸)不是像素,它会根据显示器的设置进行调整,如果你在设计应用程序时考虑到像素,这可能会造成一些失真

要在WPF中使用自定义主题,谷歌上的任何搜索都会显示如何做到这一点,这其实非常简单

另一方面,Winforms非常难,我建议使用预制控件:

这里有一些关于如何自己动手的教程:


但是如果可能的话,我建议您离开winforms,使用WPF,定制和创建UI要容易得多,即使一开始看起来很难。

也许计算机主题已设置为“Windows”98“ish”一个?我刚刚将我的机器改为Windows经典主题,它看起来与客户端b的屏幕完全一样!谢谢我将如何提供自己的主题?这是我可以添加到app.config的东西吗?可能有其他免费选项来定制winforms,但系统本身太有限了。