WPF TabControl с WindowsFormsHost неизвестная проблема границы - PullRequest
1 голос
/ 07 сентября 2010

Я пишу текстовый редактор в WPF, и у меня, кажется, есть странная граница, которую я не могу удалить.

У меня есть сетка с tabcontrol, и когда пользователь выбирает «Файл -«Новый», я программно добавляю новый tabitem в tabcontrol.Я устанавливаю содержимое tabitem для экземпляра WindowsFormsHost для размещения элемента управления ScintillaNet WinForms.

Вот проблема: http://i.stack.imgur.com/kotSb.png

Я почти уверен, что граница не подходитиз самого элемента управления WinForms, поскольку я использовал его в другом месте в той же конфигурации, и у него нет границы.

Красная граница, которую вы видите, добавлена ​​мной, чтобы выделить проблему (в методе, который отвечает наФайл -> Новый) со следующим кодом:

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

Есть идеи, откуда взялась эта серая внутренняя граница?

1 Ответ

1 голос
/ 07 сентября 2010

Это Padding для TabControl, который является полем, которое применяется к размещенному дочернему элементу.См. Обзор выравнивания, полей и отступов .Он установлен в 4 в стиле TabControl по умолчанию.Попробуйте установить Padding в ноль явно:

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