WPF应用程序,使用“窗口”对话框输入PIN。通常,它看起来像这样:https://picasaweb.google.com/lh/photo/Xl-X6Lxf9QMYSHimMY7gAA?feat=directlink
在Windows XP自助服务终端上,窗口随机分开。没有确切的方法可以复制它,但是疯狂地点击它会迟早带来它。 https://picasaweb.google.com/lh/photo/-jpkc8_CBKycdASWW4fbyQ?feat=directlink并非总是如图所示,而是类似的方式。看起来控件位置不正确。
该盒子是Wincor Nixdorf触摸屏信息亭,使用WinXP SP3,Fx 3.5 SP1。窗口标记是这样的:
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:loc="clr-namespace:Company.Product.Common.Localization;assembly=Company.Product.Common"
xmlns:locSecurity="clr-namespace:Company.Product.Common.Localization.Security;assembly=Company.Product.Common"
x:Class="Company.Product.Modules.Security.PassPhraseEntryDialog"
x:Name="Window"
Title="{x:Static locSecurity:PassPhraseEntryDialog.Window_Title}"
Width="224" Height="141" mc:Ignorable="d"
WindowStartupLocation="CenterOwner"
WindowStyle="ToolWindow"
ResizeMode="NoResize"
Loaded="Window_Loaded">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="..\ResourceDictionaries\Styles.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Canvas x:Name="LayoutRoot">
<Label Content="{x:Static locSecurity:PassPhraseEntryDialog.Password_Label}" Canvas.Left="8" Canvas.Top="8" Width="72" Height="27"/>
<PasswordBox x:Name="passwordBox" Canvas.Left="77" Canvas.Top="8" Width="118" Height="27"/>
<Button x:Name="okButton" Width="75" Content="{x:Static loc:Common.Ok}" Canvas.Left="8" Canvas.Top="73." Click="OkButton_Click" IsDefault="True"/>
<Button x:Name="cancelButton" Width="75" Content="{x:Static loc:Common.Cancel}" Canvas.Left="125" Canvas.Top="73" IsCancel="True" />
<TextBlock x:Name="errorMessage" Width="192" Height="19" Canvas.Left="8" Canvas.Top="37" TextWrapping="Wrap" Foreground="Red">
<TextBlock.Background>
<SolidColorBrush/>
</TextBlock.Background>
</TextBlock>
<TextBlock Text="{x:Static loc:Common.ChangePin}" Style="{Binding Source={StaticResource LinkTextStyle}}" HorizontalAlignment="Right" Canvas.Top="41" Canvas.Left="8" Margin="0,10,10,5" Cursor="Hand" x:Name="txtChangePin" MouseLeftButtonUp="txtChangePin_MouseLeftButtonUp" />
</Canvas>
非常欢迎任何提示或想法。
答案 0 :(得分:1)
您是否尝试为画布指定高度/宽度?我不相信Canvas会自动调整大小来填充可用空间,也许这会在有时渲染时造成混乱
答案 1 :(得分:1)
我不确切知道原因是什么,但我强烈怀疑这与渲染硬件有关。
我会尝试更改目标计算机上WPF应用程序的呈现设置。 See this link用于相关的注册表设置。