c#做的程序换了个电脑运行时不能显示全部界面,以前是台式机屏幕大,现在是笔记本屏幕小,调分辨率不管用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#做的程序换了个电脑运行时不能显示全部界面,以前是台式机屏幕大,现在是笔记本屏幕小,调分辨率不管用相关的知识,希望对你有一定的参考价值。

winForm默认有个特性,就是控件超出窗体时,会自动出现滚动条。如果这个特性被你关掉了,你设置一下FormX.AutoScroll=true。这是最简单的解决办法,当然也是不完美的解决办法。
如果要完美,在设计时的控件布局就得考虑不同分辨率的情况,合理使用Dock和Anchor能解决绝大部分的布局问题。
另外有一点,如果windows的DPI不是默认的话,则windows有2种处理DPI调整的方案,你可以试着改一下方案:win7的操作是桌面右键-屏幕分辨率-放大或缩小文本和其他项目-设置自定义文本大小(DPI),使用Windows XP风格DPI绽放比例(有打勾变没打勾,没打勾变有打勾)。
希望能帮到你。
参考技术A 因为你做的Form的Size原因,所以在别的机器上会出问题。你的Form布局太大了,所以Form自动调整不了,你要在程序里调整才可以。追问

你意思是要把窗体统一调小一点吗

追答

不是的,这个有点复杂,就是根据电脑的分辨率,来调整控件的布局,因为即使你的form的大小是对的,但是控件会超出form,造成显示的不对。所以如果当前分辨率没布局大,那么就要自动缩减控件的布局。。。百度下 很有很资料。

参考技术B 调整一下你的主窗体属性,设置成运行是最大化就好。追问

我窗体属性:WindowState,设的是Maximized

C#中gridview已经读取了Excel的数据,但是在主界面上未显示出来

在一个工程里面,有一个主界面,一旦运行这个程序,就生成了一个主界面,操作全部在主界面里。现在我在主界面上定义了一个按钮,只要点击这个按钮就可以把Excel的数据读取到gridview窗口中(这个窗口不在主界面上)。现在执行了程序,在主界面点击这个按钮,但是不能弹出单独的gridview窗口(与主界面相互独立),虽然已经将Excel数据读取到了gridview,但是操作过程始终显示主界面,不能弹出单独的gridview窗口(其中已包含读取的数据),请问用什么语句弹出单独的单独的gridview窗口(其中已包含读取的数据)?

2种方法:
1、使用链接,打开新窗口_blank;
2、使用window.open,打开链接地址;
打开的都是另外一个页面,显示gridview用的。
参考技术A BS结构 使用 javascript 控制,
window.open
在 这按钮的 onclientclick DOM事件中控制
参考技术B this.xxx.show() 参考技术C show
showdialog都不行么?

以上是关于c#做的程序换了个电脑运行时不能显示全部界面,以前是台式机屏幕大,现在是笔记本屏幕小,调分辨率不管用的主要内容,如果未能解决你的问题,请参考以下文章

C# WinForm 当窗体控件图片过多时,切换界面的显示会发生闪烁,该怎么取消闪烁。(注:双缓冲开启了)

MATLAB GUI界面大小能否自动适应

C#界面里的winform AutoScroll属性

C#界面里的winform AutoScroll属性

CDR已停止工作,怎么破?

下载了个VS2015写C++,但是运行的时候,结果窗口只是闪一下,没有显示出来,求大神解释