繁体   English   中英

Tabitem.focus仅关注tabitem标头

[英]Tabitem.focus only focuses on tabitem header

嘿。 我有一个绑定到可观察集合的tabcontrol。

我试着做

var tabitem = (TabItem)this.SingleOrDefault(ti => ti.Name == tabname);
    tabitem.Focus();
    ((UserControl)tabitem.Content).Focus();

它似乎确实专注于tabitem,但仅关注tabitem标头中的btn,而不关注内容。 tabitem内容是另一个用户控件。

如何更改焦点到内容,以便实际上选择选项卡,而不仅是标题

我知道tabcontrol.selecteditem,但是我不太确定我将如何实现它,因为observablecollection实际上是一个我称为ObservableTabCollection的类,它只是实现了observable集合。

TabControl.SelectedItem双向绑定到ObservableTabCollection中的特定TabItem。 然后,您可以将绑定设置为从ObservableTabCollection中拉出的任何项目,以使该选项卡成为显示的选项卡。

我的解决方案变成了简单地在observabletabcollection上创建一个方法,该方法将tabcontrol与observabletabcollection关联

public TabControl AssociatedTabControl;

internal void BindToTabControl(TabControl TabCtrl)
        {
            AssociatedTabControl = TabCtrl;
        }

然后在方法调用中

if (AssociatedTabControl != null) AssociatedTabControl.SelectedItem = tabitem;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM