在Xamarin Forms UWP中突出显示所选选项卡

本文关键字:显示 选项 Xamarin Forms UWP | 更新日期: 2023-09-27 18:14:23

我目前在VS 2015中使用Xamarin表单创建自己的应用程序。现在出于测试目的,使用Universal Windows应用程序是最简单的,但我似乎被一个点困住了;选择的TAB无论如何都不会突出显示。

这个高亮显示并不是我想要的,更多的是为了说明:

实际行为

预期行为

至于我使用的代码,主App加载new NavigationPage(new Layout.SchedulePage()),其中调度页面是真正的罪魁祸首,扩展Xamarin.Forms.TabbedPage。SelectedPage设置正确(加载正确的内容页),但标签没有突出显示。

经过广泛的研究,我已经排除了以下的可能性:

  • 我已经从XLabs查看了扩展标签页,但它似乎与所选择的标签样式没有任何关系。
  • 我已经查看了选项卡页面的自定义渲染器,但据我所见,这不允许修改单个选项卡,只有集体数据模板

所以,我的问题是:

如何修改所选选项卡xamarin表单的样式,或者UWP没有此功能?

如果需要,我可以提供额外的代码

在Xamarin Forms UWP中突出显示所选选项卡

您需要为UWP做的是覆盖默认的pivot标题样式。你可以从这里复制/粘贴:https://msdn.microsoft.com/en-us/library/windows/apps/mt299142.aspx

在它里面,你会注意到几个VisualStates,寻找'Selected'一个。在那个,"背景"被操纵为"SystemControlHighlightTransparentBrush"意味着它被设置为透明。把你想要调整的颜色刷粘贴到这里

你可以看到我在这里创建的一个应用程序中做了同样的事情:https://github.com/AppCreativity/Kliva/blob/505f944411ca40e1622186b323c60297eeb2788a/src/Kliva/XAMLResources/Styles.xaml#L1211