We should consider adding one or more events related to the selection of the TabView control.
It would be nice to have an own configuration block for the selected item styling. This could be similar to the header template configuration.
Presently the TabView only supports unbound mode and there is no way to bind a list of items from the view model to display as tabviewitems. It would be convenient if there is an ItemsSource property.
At the moment when clicking the overflow button, a list of items is displayed in a Popup. It would be convenient if there is a built-in mechanism for defining a custom action upon clicking the overflow button. For example one might want to open a SideDrawer.
Currently RadTabView provides SelectedItem property
Support for interactive TabHeader content (i.e. Buttons, Checkboxes) that does not invoke the tab selection and is aligned next to the tabs
When longer string is used for HeaderText the text could not be wrapped. Also the issue occurs when using Label with LineBreakMode="WordWrap" inside the TabViewHeaderItem.Content:
when the flow direction is changed to RTL
Expected: View should show in the order (tab2,tab1)
Actual: View is showing in the order (tab1,tab2)
https://material.io/design/usability/bidirectionality.html#mirroring-layout
When we add some controls, for example, 3 controls in a row inside the first tab item, then 5-10 controls in a row in the second tab item of the tabview, we can only see the first 3 controls in the first tab. In other words, we can only see the controls in the row up to the height of the first tab's content.
The issue appears in SlideView control as well. The TabView control uses SlideView internally.
In a scenario where TabView items are added and removed dynamically and IsContentPreserved property is set to "True" - if a new item is added, then the user selects it and the same item is removed, an exception is raised on iOS.
when TabView is inside Stack and item is added dynamically to the RadTabView, the content of this first item does not layout as expected.
<StackLayout>
<Button Text="Add" Clicked="OnAddClicked" />
<Button Text="Remove" Clicked="OnRemoveClicked" Margin="0,5,0,5" />
<Button Text="Clear" Clicked="OnClearClicked" />
<telerikPrimitives:RadTabView BackgroundColor="Red" x:Name="tabView" AutomationId="tabView"/>
</StackLayout>
Steps to reproduce
- open QSF.sln
- open WorldClockView.xaml
- add x:Name="tabView" to RadTabView
- add IsVisible="False" to Auckland tab item !!!
- open WorldClockView.cs
- add this code to the end of page constructor:
var tabItem = new TabViewItem()
{
Header = new TabViewHeaderItem { Text = "Prague" },
Content = new StackLayout
{
Children =
{
new Label {Text = "Prague"}
}
},
};
var index = tabView.Items.Count - 2;
tabView.Items.Insert(index, tabItem);