C# VS 2013 Wpf视觉缺陷?

C# VS 2013 Wpf视觉缺陷?,c#,wpf,visual-studio-2013,C#,Wpf,Visual Studio 2013,在网上读了一些资料后,我决定尝试从C+Windows窗体切换到C+WPF。但是我遇到了一些奇怪的东西,虫子?安装无效?:在编辑器中,一切看起来都很好,但当我构建它时,它看起来与我在编辑器中看到的明显不同。例如:即使我将borders thickness设置为0,它们仍然存在,并且总体上忽略此设置 有办法解决吗 这是我使用的代码,我没有使用任何特定的东西,只是一些菜单和按钮 <Window x:Class="WpfApplication1.MainWindow" xmlns="htt

在网上读了一些资料后,我决定尝试从C+Windows窗体切换到C+WPF。但是我遇到了一些奇怪的东西,虫子?安装无效?:在编辑器中,一切看起来都很好,但当我构建它时,它看起来与我在编辑器中看到的明显不同。例如:即使我将borders thickness设置为0,它们仍然存在,并且总体上忽略此设置

有办法解决吗

这是我使用的代码,我没有使用任何特定的东西,只是一些菜单和按钮

<Window x:Class="WpfApplication1.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="350" Width="525" ResizeMode="CanResizeWithGrip">
<Window.Effect>
    <DropShadowEffect RenderingBias="Quality"/>
</Window.Effect>
    <DockPanel>
        <Menu DockPanel.Dock="Top">
            <MenuItem Header="_File">
                <MenuItem Header="_Generate new"/>
                <MenuItem Header="_Export"/>
                <MenuItem Header="_Import"/>
                <Separator/>
                <MenuItem Header="E_xit"/>
            </MenuItem>
            <MenuItem Header="_Test"/>
        </Menu>
        <Grid>    
            <Button Content="Button" HorizontalAlignment="Left" Margin="432,289,0,0" VerticalAlignment="Top" Width="75"/>
            <Button Content="Button" HorizontalAlignment="Left" Margin="352,289,0,0" VerticalAlignment="Top" Width="75"/>
            <GroupBox Header="GroupBox" HorizontalAlignment="Left" Margin="10,35,0,0" VerticalAlignment="Top" Height="110" Width="123"/>

        </Grid>
    </DockPanel>
</Window>
下面是帮助更好地理解这个问题的截图。

您可能是通过使用从表单中学到的内容来构建窗口的:拖放控件。这将导致WPF中的次优结果。WPF有一个比像素定位更先进的定位元素系统

您应该了解有关WPF布局的教程。WPF是一种与WinForms不同的方式,如果您以一种有趣的外观将其作为WinForms处理,它将不会很好地工作

查看WPF布局、容器控件和相对定位。如果您在XAML中看到任何绝对值,那么它可能并不完美

例如:

Margin="432,289,0,0"

那太糟糕了。这是绝对定位。它不关心窗口有多大或边界有多大。控件位于左上角432/289处。这就是你看到的。与左上角的距离保持不变,但由于您的窗口受您的窗口样式的影响,它看起来不像您希望它看起来的样子。

除了代码或预期操作之外,不要在任何地方假设有错误。对于使用不清楚您要问什么的两个人,最好使用新的离题原因。虽然没什么大不了的,但它仍然涵盖了。添加了代码、链接和屏幕帽。定义网格行和列,或者使用DockPanel实现这一效果。我将borders thickness设置为0-在XAML中没有对borders thickness的引用。请正确地解释你的问题。顺便说一句,不要在WPF中使用Visual Studio设计器。像男人一样学习XAML。是的,我注意到了。我现在正在学习,所以我在玩DockPanel和其他东西。但问题是,我没有在编辑器中看到我在输出中概述的图片上的问题点-标题和整个边框都很明显,但它也会破坏按钮的定位,后来我将其设置为不可编辑,按钮正好位于边框的顶部,尽管我在编辑器中有一个间隙。输出是您的输入,受操作系统设置的样式影响。这在编辑器中不可见,主要是因为这只是开发系统的样式。你的用户可能有完全不同的风格。以WPF的方式学习WPF,这意味着您的应用程序将是风格不可知的。