最近,我在处理自定义WPF表单时偶然发现了一个问题。(无论如何,它们不都是定制的吗?)。我将以下属性添加到 XAML。
AllowsTransparency="True"
ResizeMode="NoResize"
Height="945"
Width="1621"
WindowStyle="None"
以及上面列出的大小的自定义背景图像:
<Window.Background>
<ImageBrush ImageSource="Images/form_bg.png" />
</Window.Background>
运行它之后,我添加的一些按钮就消失了。直到我超大按钮(大约300
高度和宽度)之后,它们才开始出现。
我花了一点时间试图弄清楚发生了什么.... Windows 正在调整我的表单大小,因为它不适合我的15
“笔记本电脑!只是1366 x 768
,我的 Windows8.1
只是调整了表单的大小,将其缩小到,我想,70%
它的原始大小。由于我的控件使用边距,并且XAML代码保持不变,但实际表单大小减小了,我的控件只是折叠了。
现在显而易见的解决方案是缩小图像,也许将其裁剪一点。让我们把1280x1024
它作为一个共同的解决方案并使其适合。但是,如果有人使用1024x768
监视器运行它并搞砸了怎么办?
我设法通过添加MinWidth和MinHeight属性并将它们设置为与 Width 和 Height 相同的值来修复 Windows 的大小调整,但是在移动表单后,一些底部内容会从屏幕上消失。
所以,我正在寻找的是处理这个问题的正确方法。一个体面的用户友好的解决方案。如果我可以让我的控件一起调整大小,那么用户可能无法在小屏幕上阅读某些内容。
或者,也许我可以使用 C# 将注意力集中在窗口的一部分上,而不管它的位置如何?只要那部分不掉屏就是了。
非常感谢任何提示、提示和示例!