WPF TabControl与WindowsFormsHost未知的边框问题

时间:2010-09-07 09:03:30

标签: wpf windowsformshost

我正在WPF中编写一个文本编辑器,我似乎有一个奇怪的边框,我无法删除。

我有一个带tabcontrol的网格,当用户选择“File - > New”时,我以编程方式向tabcontrol添加一个新的tabitem。我正在将tabitem内容设置为WindowsFormsHost实例,以便托管ScintillaNet WinForms控件。

问题在于:http://i.stack.imgur.com/kotSb.png

我很确定边框不是来自WinForms控件本身,因为我已经在相同配置的其他地方使用它并且它没有边框。

我看到你看到的红色边框突出显示问题(在响应File - > New的方法中),使用以下代码:

tabControl.BorderThickness = new Thickness(3, 3, 3, 3);
tabControl.BorderBrush = Brushes.Red;
tabControl.Items.Add(tab);
tab.Focus();

这个内部灰色边框来自哪个想法?

1 个答案:

答案 0 :(得分:1)

这是TabControl上的填充,它是应用于托管子元素的边距。见Alignment, Margins, and Padding Overview。它在默认的TabControl样式中设置为4。尝试明确将填充设置为零:

tabControl.BorderThickness = new Thickness(3, 3, 3, 3);
tabControl.BorderBrush = Brushes.Red;
tabControl.Padding = new Thickness(0);
tabControl.Items.Add(tab);
tab.Focus();