【问题标题】:C# difference between XP and Windows 7XP和Windows 7之间的C#区别
【发布时间】:2011-06-18 21:20:17
【问题描述】:

当我在 Windows XP 中运行此代码时,我会在单选按钮周围看到一个矩形。在 Windows 7 中没有。 如果我删除 cmets,这在 XP 下也可以正常工作。

知道为什么吗?

RadioButton rb1 = new RadioButton();
rb1.GroupName = kvp.Key.ToString();
rb1.Name = "Keep";
rb1.Margin = new Thickness(30, 5, 0, 0);
//rb1.HorizontalAlignment = HorizontalAlignment.Left;
//rb1.VerticalAlignment = VerticalAlignment.Top;
rb1.IsChecked = true;
rb1.Checked += OnRadioButton_Checked;
Grid.SetRow(rb1, grid.RowDefinitions.Count - 1);
Grid.SetColumn(rb1, 1);
grid.Children.Add(rb1);

【问题讨论】:

  • 你能贴出不同效果的屏幕截图吗?
  • 你解决过这个问题吗?我认为stackoverflow.com/questions/8354423/… 也有同样的问题,但不是 100% 确定...
  • 正如我在下面写的,我没有解决这个问题。这可以通过条件编译指令(#if)来解决。
  • @RandallFlagg:你有没有找到解决方案?我可以加载经典主题(这应该是 XP 和 7 通用的)...如果可行的话。题外话:Randall Flagg不是黑塔书中坏人的名字吗? ;)

标签: c# .net wpf radio-button


【解决方案1】:

Windows 7 和 Windows XP 将以稍微不同的方式呈现相同的 XAML,因为它们具有不同的默认主题。 Vista 和 Windows 7 使用 Aero,而 XP 使用 Luna(Windows Server 2003 使用 Classic - Windows Server 2008 似乎也是如此)。

您可以覆盖它以查看它是否会导致您看到的差异。

http://arbel.net/blog/archive/2006/11/03/Forcing-WPF-to-use-a-specific-Windows-theme.aspx

http://msdn.microsoft.com/en-us/library/aa358533(v=VS.90).aspx

【讨论】:

  • 没有解决问题。改了一点风格,还是有区别的。
猜你喜欢
  • 2012-06-17
  • 2013-09-02
  • 1970-01-01
  • 2011-06-12
  • 2010-12-12
  • 2011-12-28
  • 1970-01-01
  • 2011-07-27
  • 2011-01-29
相关资源
最近更新 更多