2010-10-19 91 views
4

我目前正在WPF触摸屏应用程序上工作。我正在Windows XP机器上开发它。我已经在这台机器上测试过它,它工作得很好。但是当我将它部署到Windows Embedded机器时,我开始出现奇怪的行为:所有弹出消息,下拉列表,上下文菜单出现在主窗口后面。在WPF弹出消息中,下拉列表出现在主窗口后面

我也将焦点放在我的主窗口上,当应用程序加载时,在主屏幕上启用上下文菜单。

此外,我的主窗口的AllowTransparency设置为true,(我看到人们设置AllowTransparency时有类似的问题)。而且这在前一版本中也没有发生。

编辑:这些问题已经过几次编译后,我无法重现它,但我仍然在尝试。 我也认为它必须是与图形驱动程序有关的东西,因为它发生在一台Windows XP机器上,而不是另一台(硬件不同,一个运行XP嵌入式第二XP专业版)。

任何想法为什么会发生这种情况?

+0

嗨Vitalij。那么,你是如何解决这个问题的?我们在几台XP机器上有类似的问题。 – 2011-12-16 08:04:26

回答

1

您是否尝试过强迫元素的ZIndex高于主窗口?

MSDN blog post介绍它的使用 - 但重要的部分可能是:

第一组矩形对象的使用对象的默认z顺序呈现,这是基于子对象的位置Canvas集合

所以如果创建对象的顺序已经改变(无论出于何种原因),您可能会看到这种行为。

明确设置ZIndex将确认或否认此操作。

+0

我想尝试一下,但经过几次编译后,问题已经消失。我试图重现它,但没有运气。我修改了非常少量的代码,所以我仍然试图找出可能产生错误的内容。 – Vitalij 2010-10-19 13:43:19

+0

但是你能否在下拉菜单项目列表上设置Z-index?还是它继承了您在下拉菜单中设置的z-index。因为我认为你不能改变标准控件内控件的z顺序。我得到的是一个正确显示的下拉列表,但只要您点击它,菜单列表就会下移,但在应用程序窗口后面。 – Vitalij 2010-10-19 13:46:50

+0

@Vitali - 我不知道,这就是为什么我提出它作为一些尝试。我本来只是想发表评论,但意识到有更多的信息比明智的合适。 – ChrisF 2010-10-19 13:54:41