Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.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# XAML控件在运行应用程序时更改位置_C#_Wpf_Xaml_Windows Phone 8 - Fatal编程技术网

C# XAML控件在运行应用程序时更改位置

C# XAML控件在运行应用程序时更改位置,c#,wpf,xaml,windows-phone-8,C#,Wpf,Xaml,Windows Phone 8,我正在尝试构建一个应用程序,它需要我将一些简单的文本放在一个固定的位置(比如说,我正在尝试模拟一个锁屏) 这在我处于设计模式时起作用,但当我运行应用程序时,TextBlock会改变位置 从前面的图片中可以看到,在设计模式下,myTextBlock覆盖了背景,但当应用程序运行时,它会移动到屏幕底部 代码非常简单,我不知道发生了什么 <Grid x:Name="LayoutRoot" Background="{StaticResource PhoneBackgroundBrush}">

我正在尝试构建一个应用程序,它需要我将一些简单的文本放在一个固定的位置(比如说,我正在尝试模拟一个锁屏)

这在我处于设计模式时起作用,但当我运行应用程序时,
TextBlock
会改变位置

从前面的图片中可以看到,在设计模式下,my
TextBlock
覆盖了背景,但当应用程序运行时,它会移动到屏幕底部

代码非常简单,我不知道发生了什么

<Grid x:Name="LayoutRoot" Background="{StaticResource PhoneBackgroundBrush}">
    <Image Source="/bvlczww3.bmp" Stretch="UniformToFill" />
    <TextBlock x:Name="StaticDateBlock" Margin="32,645.263,0,0" TextWrapping="Wrap" Height="374.737" Width="550" FontSize="113" Text="11:03 Saturday January 5" MaxWidth="540" MaxHeight="390" UseLayoutRounding="False" FontWeight="Medium" LineStackingStrategy="BlockLineHeight" LineHeight="120" HorizontalAlignment="Left" VerticalAlignment="Top" FontFamily="Segoe WP SemiLight"/>

</Grid>


我的代码怎么了?

调整TextBlock控件的边距。。。因为当应用程序运行时,控件会改变其相对于应用程序的位置。

您应该不要像这样使用边距-
Margin=“32645.263,0,0”
,XAML是作为智能放置应用程序发明的,所以您应该使用面板、网格等来对齐所需的组件,而不是使用绝对坐标。尝试面板,也许它会解决您的问题。

此文本来自哪里???其他文本都已在其位置上,所有内容都来自图像,但应用程序运行时底部移动的
TextBlock
除外。您在第一张图像中看不到
TextBlock
,因为它的内容与图像中的tet对齐(您可以看到,在第一张图像中,日期看起来很粗体,因为文本重叠)。我已经更新了第一张图片,以显示
TextBlock
将645减少到320并检查…我会尝试一下,但为什么设计窗口与实际应用程序如此不同?我的意思是,在设计窗口中,一切都是完美的,而在应用程序中,一切都是一团糟!因为每台设备都有不同的屏幕大小,为了获得更好的效果,你必须考虑屏幕分辨率的百分比。你是对的,但这里的问题是,我在设计窗口中所做的一切都不是我在应用程序运行时得到的!即使是字体大小,这是完美的设计模式,变得更大时,应用程序正在运行!
SnapsToDevicePixels
选项是什么?您确定Windows Phone上有
SnapsToDevicePixels
选项吗?Silverlight上有
SnapsToDevicePixels
选项