Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.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
C# 是否存在强制设置为<;=windows窗体应用程序的屏幕尺寸限制?_C#_Visual Studio - Fatal编程技术网

C# 是否存在强制设置为<;=windows窗体应用程序的屏幕尺寸限制?

C# 是否存在强制设置为<;=windows窗体应用程序的屏幕尺寸限制?,c#,visual-studio,C#,Visual Studio,我曾经写过一个可以显示照片的应用程序。我正试图用C#在visualstudio中重新编写它,并赋予它新的特性。我现在编写的应用程序确实使用滚动条来方便查看过大的图像。以前的应用程序会用图像填充表单区域,你可以按住鼠标在屏幕上移动它。如果图像比屏幕大,你只需移动它来查看以前隐藏的区域。通过使窗体与图像大小相同,这是处理查看大于屏幕尺寸的图像的“问题”的非常优雅的方法 与将图像放入带有滚动条的静态可重新调整大小的表单中相比,这种方式的优势在于,图像将填满可用的屏幕空间,如果序列中的下一个图像(它是一

我曾经写过一个可以显示照片的应用程序。我正试图用C#在visualstudio中重新编写它,并赋予它新的特性。我现在编写的应用程序确实使用滚动条来方便查看过大的图像。以前的应用程序会用图像填充表单区域,你可以按住鼠标在屏幕上移动它。如果图像比屏幕大,你只需移动它来查看以前隐藏的区域。通过使窗体与图像大小相同,这是处理查看大于屏幕尺寸的图像的“问题”的非常优雅的方法

与将图像放入带有滚动条的静态可重新调整大小的表单中相比,这种方式的优势在于,图像将填满可用的屏幕空间,如果序列中的下一个图像(它是一个允许您循环浏览图像的浏览器)很小,则图像应用程序将只占用与图像相同的空间。你可以很容易地把它移到一边。您不必手动调整显示它的窗体的大小,以便为其他应用程序腾出空间

我无法在新应用程序中实现相同的功能,因为VisualStudio不允许我动态地重新调整窗体的大小,使其比屏幕更高或更宽

是否有人知道有一个插件或解决方法可以覆盖此限制

我愿意接受实现同样目标的建议,但我仍然想知道是否可以通过插件或代码来关闭这一限制。下面是该应用程序前一个版本的视频链接,演示了我希望通过将表单大小设置为大于屏幕尺寸来实现的行为

编辑:上一个应用程序的演示-以及我想要实现的行为


我认为你不应该搜索比屏幕大的表单。您可以在窗体上使用图像的位置(上/左)协调。您可以使用带有负值的坐标,这样您会给最终用户留下这样的印象,即他浏览屏幕尺寸之外的图像边界。

简单地说,您可以使用
图片框创建
表单

然后将表单的
AutoScroll
属性(或
PictureBox
的容器,如果适用)更改为
true

然后将
PictureBox
SizeMode
属性更改为
AutoSize

你应该以这样的方式结束:


为什么不在图片容器上使用滚动条呢?这是一个解决方案,但它远不如前一代应用程序的工作方式优雅。我可以像拖动图片一样拖动应用程序。我宁愿让它按我想要的方式工作,也不愿让步于使用滚动条。当应用程序不在屏幕可见部分时,你是如何拖动它的?使用应用程序中不在屏幕可见部分之外的部分。当我包含视频链接时,您将看到。您使用类库不必处理在windows上实现UI的细节。这使您能够了解类库编写者认为“合理”的偏好。Winforms没有设置什么障碍,您可以通过重写WndProc()来调整很多东西。但不是这个,他们把脚放下来了。绝对没有办法创建一个比屏幕大的窗口。那个繁忙的身体密码是私有的,不能被破解。这是一个完全明智和体面的选择,但你不会同意。所以不要使用Winforms。在这里,我得到了一个“信箱”来查看图片。在我要创建的应用程序中,我将图像一直移动到屏幕边缘,如果我想看到边缘以外的内容,我只需将整个表单移到另一个方向。在这种模式下,整个屏幕都是我的“信箱”,而不必是屏幕中的一个表单。这个,或者我认为您正在描述的-表单的顶部、左侧、高度,动态改变宽度,使窗体看起来比屏幕大-如果无法关闭限制,我可能会这样做。是的,或者您选择滚动选项,您可以搜索隐藏滚动条的方法。碰巧我已经让应用程序使用滚动条。我只是想把它带到下一个层次,我认为这会使它更有用。看到视频-是的,我看到你可以移动图像周围,你可能会考虑使用DirectX在你的应用程序。它可能会为您提供更好的选择,尤其是图形工作。