Kug*_*gel 12 c# wpf dimensions
我有一个设置为340 x 146像素的窗口,不可调整大小.
在设计师中,窗口大小是正确的.但是当我运行应用程序时它更大.
编辑:此外,布局是Canvas
.
经典主题:
EDIT2:
在运行snoop(感谢Zach)后,看起来实际尺寸是我指定的尺寸.但客户区比Visual Studio中的客户区要大.
我现在明白,当窗口大小固定到某些尺寸时,客户端大小会延伸.但是我认为这会使窗口中的Canvas布局无法使用.
EDIT3:
<Window x:Class="TI.Presentation.Views.AutentizationWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Authentication" Height="146" Width="340" ResizeMode="NoResize" Background="{StaticResource {x:Static SystemColors.ControlBrushKey}}" >
<Canvas>
<Label Canvas.Left="12" Canvas.Top="12" FontSize="15" Width="217">Enter authentication code here:</Label>
<TextBox Canvas.Left="12" Canvas.Top="38" Height="23" Name="code" Width="294" FontSize="14" />
<Button Canvas.Top="67" Content="OK" Height="28" Width="100" Canvas.Left="206" FontSize="14" IsDefault="True" Click="OKClick" />
</Canvas>
</Window>
Run Code Online (Sandbox Code Playgroud)
我会在四处寻找之后自己回答这个问题.
窗口的ActualWith和ActualHeight等于设计器中设置的宽度和高度.
客户区是什么变化.客户端的尺寸将是窗口尺寸减去主题边框.但是,这会打破Canvas设计,因为它的绝对定位和画布尺寸会根据主题而改变.
使Canvas设计工作的方法.是在Canvas上设置尺寸,在窗口上移除尺寸并相应地在窗口上设置SizeToContent.这样,空腔尺寸保持固定,窗口尺寸根据主题边框的思考方式而变化.