XP和Windows 7之间的C#区别

时间:2011-01-31 21:35:02

标签: c# .net wpf radio-button

当我在Windows XP中运行此代码时,我会在radiobutton周围找到一个矩形。在Windows 7中没有。 如果我删除了这些评论,这也可以在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);

1 个答案:

答案 0 :(得分:8)

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