- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚将PC从Windows 7移至Windows 8,并且在运行WPF应用程序时,我注意到WPF弹出窗口和/或工具提示现在默认位于左下角,而不是通常的右下角。有人注意到吗?我知道您可以在xaml中的每个工具提示上指定它们的位置,但是我们有很多工具提示和弹出窗口。我想知道是否可以在WPF应用程序中全局指定默认位置。 Google在这个问题上并未取得很多成果。我们有理由将它们保持在相同的原始默认位置(某些弹出窗口具有相对于其启动位置而言的内容)。
Windows 8 :(左下方)
Windows 7 :(右下方)
相同的代码!标准的“工具提示” xaml属性。
有任何想法吗?
解决,我发表了评论
好的,我发现了问题。它与Tablet PC /触摸屏有关。 (左手..右手首选项)此其他链接提供了一个原因。我正在研究一种解决方案,现在可以解决此问题。病态很快就会贴出来!
windows 8 popup location
最佳答案
感谢@TravisWhidden提供解决方案。刚刚实现了侦听StaticPropertyChanged
事件的改进版本,因此将其粘贴到此处,因为它看起来不像是“黑客”。
private static readonly FieldInfo _menuDropAlignmentField;
static MainWindow()
{
_menuDropAlignmentField = typeof(SystemParameters).GetField("_menuDropAlignment", BindingFlags.NonPublic | BindingFlags.Static);
System.Diagnostics.Debug.Assert(_menuDropAlignmentField != null);
EnsureStandardPopupAlignment();
SystemParameters.StaticPropertyChanged += SystemParameters_StaticPropertyChanged;
}
private static void SystemParameters_StaticPropertyChanged(object sender, PropertyChangedEventArgs e)
{
EnsureStandardPopupAlignment();
}
private static void EnsureStandardPopupAlignment()
{
if (SystemParameters.MenuDropAlignment && _menuDropAlignmentField != null)
{
_menuDropAlignmentField.SetValue(null, false);
}
}
关于.net - WPF弹出窗口的习惯,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18113597/
我编写的代码主要供个人使用,但我正在考虑发布我最初开发供个人使用的应用程序(科学模拟/可视化)。 我的一个习惯是在类中使用一个main方法来单独测试类的运行情况。我认为这在某种程度上可能是不好的(毫无
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: How do I convince programmers in my team to do TDD? 在从
假设我想测试是否有一个名为“Z”的驱动器。第一步是这样的; Get-PSProvider | Select-Object -Property Drives 这个给我; Drives: ... {C,
这是对 an old answer to a question about the necessity of functools.partial 的一种跟进: 虽然这个答案非常清楚地解释了这种现象及其
Perl 习惯很难改掉。两种语言之间的变量声明、作用域、全局/局部是不同的。是否有一组推荐的 python 语言习语可以使从 perl 编码到 python 编码的过渡不那么痛苦。 细微的变量拼写错误
我是一名优秀的程序员,十分优秀!