【问题标题】:WPF TabControl with WindowsFormsHost unknown border issue带有 WindowsFormsHost 未知边框问题的 WPF TabControl
【发布时间】:2010-09-07 09:03:30
【问题描述】:

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

我有一个带有 tabcontrol 的网格,当用户选择“File -> New”时,我以编程方式将一个新的 tabitem 添加到 tabcontrol。我将 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();

这个内部灰色边框的来源有什么想法吗?

【问题讨论】:

    标签: wpf windowsformshost


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-23
      • 2021-09-11
      • 1970-01-01
      • 1970-01-01
      • 2011-12-08
      • 2015-11-02
      • 2011-11-02
      相关资源
      最近更新 更多