Telerik Forums
UI for .NET MAUI Forum
1 answer
215 views

Hello, I am trying to set a custom CellEditTemplate for a Date Column so that I can make it edit the time not just the date, but the binding is not working at all.

And it says this error: "Binding: 'Time' property not found on 'Telerik.Maui.Controls.Compatibility.DataGrid.DataGridCellEditContext', target property: 'Telerik.Maui.Controls.RadTimePicker.Time'"


  <telerik:DataGridDateColumn PropertyName="Time" 
                                            HeaderText="Time">

                    <telerik:DataGridColumn.CellEditTemplate>
                        <DataTemplate>
                            <telerik:RadTimePicker Time="{Binding Time}"></telerik:RadTimePicker>
                        </DataTemplate>
                    </telerik:DataGridColumn.CellEditTemplate>

                </telerik:DataGridDateColumn>

Antoan
Telerik team
 answered on 02 Sep 2022
1 answer
285 views
can i put text inside the bar?
Antoan
Telerik team
 answered on 01 Sep 2022
1 answer
88 views
Hi, i'm try to order by chart of the bar horizontal, how to do? .net maui 
Antoan
Telerik team
 answered on 31 Aug 2022
1 answer
942 views

Binding multiple selected to RadComboBox after getting the data not work 

xaml code
 <telerik:RadComboBox ItemsSource="{Binding Skills}"
                                     SelectedItem="{Binding SelectedSkillItems,Mode=TwoWay}"
                                     Placeholder="Select Skills"
                                     MaximumWidthRequest="{OnPlatform WinUI='300', MacCatalyst='300'}"
                                     SelectionMode="Multiple"
                                     IsDropDownClosedOnSelection="False"/>
 

public ObservableCollection<string> Skills { get; set; }

 public ObservableCollection<string> SelectedSkillItems 
        {
            get => selectedSkillItems;
            set =>UpdateValue(ref selectedSkillItems, value);
        }

Skills = new ObservableCollection<string>() { ".NET MAUI", "Xamarin", "Blazor", "WPF", "WinUI", "Fiddler", "Sitefinity", "Test Studio", "Open Edge", "Kinvey", "DataRPM", "Corticon" };


 SelectedSkillItems =new ObservableCollection<string>(new List<string>() { "Xamarin", "WPF" });


Didi
Telerik team
 answered on 30 Aug 2022
0 answers
111 views
Is it possible to drag and drop a TabViewItem/Window to the extended screen?
atlanta
Top achievements
Rank 1
 asked on 28 Aug 2022
0 answers
1.5K+ views

I have a .Net MAUI app that uses shell TabBar:


     <TabBar>
        <Tab Title="Home" Icon="{StaticResource IconHome}">
            <ShellContent ContentTemplate="{DataTemplate local:MainPage}" />
        </Tab>
        <Tab Title="Coverage&#10;Calculator" Icon="{StaticResource IconCalculator}" >
            <ShellContent ContentTemplate="{DataTemplate calculator:CoverageCalculatorPage}" />
        </Tab>
        <Tab Title="Distributor&#10;Locator" Icon="{StaticResource IconLocator}">
            <ShellContent ContentTemplate="{DataTemplate locator:DistributorsLocatorPage}" />
        </Tab>
        <Tab Title="Scan&#10;QR Code" Icon="{StaticResource IconQrScanner}">
            <ShellContent ContentTemplate="{DataTemplate qrScanner:QrScannerPage}" />
        </Tab>        
    </TabBar>

When the title has two lines, the second line doesn't fit the size of the TabBar, and thus is hidden. Only a part of the first line can be seen. I wonder if font can be changed, or the tab bar height increased? I have tested only on an Android phone and on an emulator so far.

 


Dmitriy
Top achievements
Rank 1
 asked on 25 Aug 2022
2 answers
781 views

I'm just wondering if you folks have run into major UI differences when porting Xamarin code over...

Xamarin version:

Essentially identical code in Maui (only differences were required by Maui, such as SelectorSettings --> PopupSettings):

 

Code involved:

 


<?xml version="1.0" encoding="utf-8" ?>
<ContentView
    x:Class="iTrackBilliards.Views.RotationView"
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    xmlns:controls="clr-namespace:iTrackBilliards.Controls;assembly=iTrackBilliards"
    xmlns:helpers="clr-namespace:iTrackBilliards.Helpers;assembly=iTrackBilliards"
    xmlns:resx="clr-namespace:iTrackBilliards.Resources;assembly=iTrackBilliards"
    xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui"
    xmlns:viewModels="clr-namespace:iTrackBilliards.ViewModels;assembly=iTrackBilliards">
    <ContentView.Resources>
        <helpers:RotationCellContentSelector x:Key="RotationCellContentSelector">
            <helpers:RotationCellContentSelector.CellTemplatePlayer1>
                <telerik:DataGridTextCellStyle FontSize="{OnPlatform Default=18, Android=11, iOS=10}" TextColor="{StaticResource Player1Color}" />
            </helpers:RotationCellContentSelector.CellTemplatePlayer1>
            <helpers:RotationCellContentSelector.CellTemplatePlayer2>
                <telerik:DataGridTextCellStyle FontSize="{OnPlatform Default=18, Android=11, iOS=10}" TextColor="{StaticResource Player2Color}" />
            </helpers:RotationCellContentSelector.CellTemplatePlayer2>
        </helpers:RotationCellContentSelector>
        <Style BasedOn="{StaticResource SmallLabelStyleCentered}" TargetType="Label" />
    </ContentView.Resources>
    <ContentView.Content>
        <FlexLayout
            Margin="{OnPlatform Default='10',
                                Android='3,10',
                                iOS='3,10'}"
            x:DataType="viewModels:RotationBaseViewModel"
            Direction="Column"
            HorizontalOptions="Center"
            WidthRequest="{OnPlatform Default=800,
                                      Android=350,
                                      iOS=350}">
            <!--#region Player, Game, Inning-->
            <Grid
                ColumnDefinitions="Auto,*,*,Auto, Auto"
                HorizontalOptions="StartAndExpand"
                RowDefinitions="Auto,Auto">
                <!--#region Player-->
                <controls:GetShowPlayerControl
                    Grid.Row="0"
                    Grid.Column="0"
                    Grid.ColumnSpan="5"
                    CurrentPlayer="{Binding CurrentPlayer, Mode=TwoWay}"
                    CurrentPlayerName="{Binding CurrentPlayerName, Mode=TwoWay}"
                    PlayerColor="{Binding PlayerColor, Mode=TwoWay}"
                    PlayerList="{Binding PlayerList}"
                    SelectPlayerIsEnabled="{Binding SelectPlayerIsEnabled}" />
                <!--#endregion-->
                <!--#region Game and Inning-->
                <Label
                    Grid.Row="1"
                    Grid.Column="0"
                    Margin="{OnPlatform Default='0,0,10,0',
                                        Android='0,0,2,0',
                                        iOS='0,0,3,0'}"
                    Style="{StaticResource SmallLabelStyleCentered}"
                    Text="{x:Static resx:AppResources.Game}"
                    VerticalOptions="Center" />
                <telerik:RadListPicker
                    Grid.Row="1"
                    Grid.Column="1"
                    IsVisible="{Binding SelectGameIsEnabled}"
                    ItemsSource="{Binding Games}"
                    SelectedItem="{Binding Game, Mode=TwoWay}">
                    <VisualElement.Behaviors>
                        <telerik:RadEventToCommandBehavior Command="{Binding GameSelectionChangedCommand}" EventName="SelectionChanged" />
                    </VisualElement.Behaviors>
                    <telerik:RadListPicker.PopupSettings>
                        <telerik:PickerPopupSettings FooterTemplate="{StaticResource FooterTemplate}" HeaderTemplate="{StaticResource GameHeaderTemplate}" />
                    </telerik:RadListPicker.PopupSettings>
                </telerik:RadListPicker>
                <Label
                    Grid.Row="1"
                    Grid.Column="1"
                    Margin="{OnPlatform Default='0,0,10,0',
                                        Android='0,0,2,0',
                                        iOS='0,0,2,0'}"
                    IsVisible="{Binding SelectGameIsEnabled, Converter={helpers:BooleanConverter}}"
                    Style="{StaticResource SelectedEntityLabelStyle}"
                    Text="{Binding Game}"
                    VerticalOptions="Center" />
                <Label
                    Grid.Row="1"
                    Grid.Column="3"
                    Style="{StaticResource SmallLabelStyleCentered}"
                    Text="{x:Static resx:AppResources.Inning}" />
                <Label
                    Grid.Row="1"
                    Grid.Column="4"
                    FontAttributes="Bold"
                    Style="{StaticResource SelectedEntityLabelStyle}"
                    Text="{Binding InningNumber}"
                    VerticalOptions="Center" />
                <!--#endregion-->
            </Grid>
            <!--#endregion-->
            <!--#region Balls Left and Save Inning Button-->
            <telerik:RadBorder BorderColor="{StaticResource NormalTextColor}" BorderThickness="0,1,0,0">
                <FlexLayout
                    Margin="{OnPlatform Default='0,35,0,0',
                                        Android='0,25,0,0',
                                        iOS='0,20,0,0'}"
                    Direction="Row"
                    HeightRequest="{OnPlatform Default=50,
                                               Android=30,
                                               iOS=40}"
                    JustifyContent="SpaceBetween">
                    <!--  Balls Left  -->
                    <StackLayout
                        HorizontalOptions="Start"
                        Orientation="Horizontal"
                        VerticalOptions="Center">
                        <Label Style="{StaticResource SmallLabelStyleCentered}" Text="{x:Static resx:AppResources.BallsLeft}" />
                        <telerik:RadNumericInput
                            ControlTemplate="{StaticResource CustomRadNumericInputControlTemplate}"
                            Maximum="{Binding MaxBallsLeft}"
                            Minimum="0"
                            WidthRequest="{OnPlatform Default=250,
                                                      Android=135,
                                                      iOS=135}"
                            Value="{Binding BallsLeft, Mode=TwoWay}" />
                    </StackLayout>
                    <!--  Save Inning Button  -->
                    <StackLayout
                        HorizontalOptions="End"
                        Orientation="Horizontal"
                        VerticalOptions="Center">
                        <telerik:RadButton
                            Command="{Binding SaveInningCommand}"
                            HorizontalOptions="Center"
                            IsEnabled="{Binding IsSaveEnabled}"
                            Text="{Binding SaveInningButtonText}"
                            VerticalOptions="Center"
                            WidthRequest="{OnPlatform Default=85,
                                                      Android=90,
                                                      iOS=70}" />
                    </StackLayout>
                </FlexLayout>
            </telerik:RadBorder>
            <!--#endregion-->
            <!--#region isBreak and Alternate Breaks-->
            <telerik:RadBorder>
                <FlexLayout
                    Margin="{OnIdiom '0,10',
                                     Phone='0,5'}"
                    Direction="Row"
                    HeightRequest="{OnIdiom 60,
                                            Phone=50}"
                    JustifyContent="SpaceBetween"
                    WidthRequest="{OnPlatform Default=800,
                                              Android=300,
                                              iOS=300}">
                    <StackLayout
                        HorizontalOptions="Start"
                        Orientation="Horizontal"
                        VerticalOptions="Center">
                        <Label Style="{StaticResource SmallLabelStyleCentered}" Text="{x:Static resx:AppResources.Break}" />
                        <telerik:RadCheckBox IsChecked="{Binding IsBreakShot}" VerticalOptions="Center" />
                    </StackLayout>
                    <StackLayout
                        HorizontalOptions="Start"
                        Orientation="Horizontal"
                        VerticalOptions="Center">
                        <Label
                            IsVisible="{Binding AlternateBreakShots}"
                            Style="{StaticResource SmallLabelStyleCentered}"
                            Text="Alternate Breaks" />
                    </StackLayout>
                </FlexLayout>
            </telerik:RadBorder>
            <!--#endregion-->
            <!--#region On Break-->
            <telerik:RadBorder>
                <FlexLayout
                    Direction="Row"
                    HeightRequest="{OnPlatform Default=50,
                                               Android=30,
                                               iOS=40}"
                    JustifyContent="SpaceBetween">
                    <StackLayout
                        HorizontalOptions="Start"
                        Orientation="Horizontal"
                        VerticalOptions="Center">
                        <Label Style="{StaticResource SmallLabelStyleCentered}" Text="{x:Static resx:AppResources.OnBreak}" />
                        <telerik:RadNumericInput
                            ControlTemplate="{StaticResource CustomRadNumericInputControlTemplate}"
                            IsEnabled="{Binding IsBreakShot}"
                            Maximum="{Binding MaxBallsOnBreak}"
                            Minimum="0"
                            WidthRequest="{OnPlatform Default=250,
                                                      Android=135,
                                                      iOS=135}"
                            Value="{Binding BallsOnBreak, Mode=TwoWay}" />
                    </StackLayout>
                </FlexLayout>
            </telerik:RadBorder>
            <!--#endregion-->
            <!--#region List Pickers-->
            <Grid
                Margin="{OnPlatform Default='0,20,0,0',
                                    Android='10,5,0,0',
                                    iOS='10,5,0,0'}"
                HorizontalOptions="Start"
                RowDefinitions="Auto,Auto"
                RowSpacing="{OnPlatform Default=30,
                                        Android=5,
                                        iOS=5}">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto" />
                    <ColumnDefinition Width="Auto" />
                    <ColumnDefinition Width="{OnPlatform Default=50, Android=25, iOS=25}" />
                    <ColumnDefinition Width="Auto" />
                    <ColumnDefinition Width="Auto" />
                </Grid.ColumnDefinitions>
                <!--  Notation  -->
                <Label
                    Grid.Row="0"
                    Grid.Column="0"
                    HorizontalOptions="End"
                    Style="{StaticResource SmallLabelStyle}"
                    Text="{x:Static resx:AppResources.Notation}"
                    VerticalOptions="{OnPlatform Default=Center,
                                                 Android=End,
                                                 iOS=End}" />
                <telerik:RadListPicker
                    Grid.Row="0"
                    Grid.Column="1"
                    HorizontalOptions="Start"
                    ItemsSource="{Binding RequiredNotationList}"
                    SelectedItem="{Binding RequiredNotation, Mode=TwoWay}">
                    <telerik:RadListPicker.PopupSettings>
                        <telerik:PickerPopupSettings FooterTemplate="{StaticResource FooterTemplate}" HeaderTemplate="{StaticResource NotationHeaderTemplate}" />
                    </telerik:RadListPicker.PopupSettings>
                </telerik:RadListPicker>
                <!--  Modifier  -->
                <Label
                    Grid.Row="0"
                    Grid.Column="3"
                    HorizontalOptions="End"
                    Style="{StaticResource SmallLabelStyleCentered}"
                    Text="{x:Static resx:AppResources.Modifier}"
                    VerticalOptions="{OnPlatform Default=Center,
                                                 Android=End,
                                                 iOS=End}" />
                <telerik:RadListPicker
                    Grid.Row="0"
                    Grid.Column="4"
                    HorizontalOptions="Start"
                    ItemsSource="{Binding NotationModifierList}"
                    SelectedItem="{Binding NotationModifier, Mode=TwoWay}">
                    <telerik:RadListPicker.PopupSettings>
                        <telerik:PickerPopupSettings FooterTemplate="{StaticResource FooterTemplate}" HeaderTemplate="{StaticResource ModifierHeaderTemplate}" />
                    </telerik:RadListPicker.PopupSettings>
                </telerik:RadListPicker>
                <!--  Foul  -->
                <Label
                    Grid.Row="1"
                    Grid.Column="0"
                    HorizontalOptions="End"
                    Style="{StaticResource SmallLabelStyleCentered}"
                    Text="{x:Static resx:AppResources.Foul}"
                    VerticalOptions="{OnPlatform Default=Center,
                                                 Android=End,
                                                 iOS=End}" />
                <telerik:RadListPicker
                    Grid.Row="1"
                    Grid.Column="1"
                    HorizontalOptions="Start"
                    ItemsSource="{Binding FoulList}"
                    SelectedItem="{Binding Foul, Mode=TwoWay}">
                    <telerik:RadListPicker.PopupSettings>
                        <telerik:PickerPopupSettings FooterTemplate="{StaticResource FooterTemplate}" HeaderTemplate="{StaticResource FoulHeaderTemplate}" />
                    </telerik:RadListPicker.PopupSettings>
                </telerik:RadListPicker>
                <!--  Miss Reason  -->
                <Label
                    Grid.Row="1"
                    Grid.Column="3"
                    HorizontalOptions="End"
                    Style="{StaticResource SmallLabelStyleCentered}"
                    Text="{x:Static resx:AppResources.Optional}"
                    VerticalOptions="{OnPlatform Default=Center,
                                                 Android=End,
                                                 iOS=End}" />
                <telerik:RadListPicker
                    Grid.Row="1"
                    Grid.Column="4"
                    HorizontalOptions="Start"
                    ItemsSource="{Binding OptionalList}"
                    SelectedItem="{Binding Optional, Mode=TwoWay}">
                    <telerik:RadListPicker.PopupSettings>
                        <telerik:PickerPopupSettings FooterTemplate="{StaticResource FooterTemplate}" HeaderTemplate="{StaticResource OptionalHeaderTemplate}" />
                    </telerik:RadListPicker.PopupSettings>
                </telerik:RadListPicker>
            </Grid>
            <!--#endregion-->
            <!--#region Stats Grid-->
            <Grid
                Margin="{OnPlatform Default='20,15,0,0',
                                    Android='5,15,0,0',
                                    iOS='5,15,0,0'}"
                ColumnDefinitions="1.5*, *, 1.5*, *, 1.5*, *, 1.5*, *"
                HeightRequest="{OnPlatform Default=175,
                                           Android=115,
                                           iOS=100}"
                RowDefinitions="Auto,Auto,Auto,Auto,Auto"
                WidthRequest="{OnPlatform Default=650,
                                          Android=350,
                                          iOS=325}">
                <!--  Player 1  -->
                <Label
                    Grid.Row="0"
                    Grid.Column="0"
                    Grid.ColumnSpan="8"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player1Truncated, Mode=TwoWay}"
                    TextColor="DeepPink" />
                <!--  Player 2  -->
                <Label
                    Grid.Row="0"
                    Grid.Column="4"
                    Grid.ColumnSpan="4"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player2}"
                    TextColor="GreenYellow" />
                <!--  Player 1 TPA  -->
                <Label
                    Grid.Row="1"
                    Grid.Column="0"
                    HorizontalTextAlignment="Start"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.TPA}" />
                <Label
                    Grid.Row="1"
                    Grid.Column="1"
                    HorizontalTextAlignment="End"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding DisplayPlayer1Tpa}" />
                <!--  Player 1 Games Won  -->
                <Label
                    Grid.Row="1"
                    Grid.Column="2"
                    HorizontalTextAlignment="Start"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.GamesWon}" />
                <Label
                    Grid.Row="1"
                    Grid.Column="3"
                    HorizontalTextAlignment="End"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player1GamesWon}"
                    TextColor="DeepPink" />
                <!--  Player 2 TPA  -->
                <Label
                    Grid.Row="1"
                    Grid.Column="4"
                    HorizontalTextAlignment="Start"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.TPA}" />
                <Label
                    Grid.Row="1"
                    Grid.Column="5"
                    HorizontalTextAlignment="End"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding DisplayPlayer2Tpa}" />
                <!--  Player 2 Games Won  -->
                <Label
                    Grid.Row="1"
                    Grid.Column="6"
                    HorizontalTextAlignment="Start"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.GamesWon}" />
                <Label
                    Grid.Row="1"
                    Grid.Column="7"
                    HorizontalTextAlignment="End"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player2GamesWon}"
                    TextColor="GreenYellow" />
                <!--  Player 1 Balls Pocketed  -->
                <Label
                    Grid.Row="2"
                    Grid.Column="0"
                    HorizontalTextAlignment="Start"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.Pocketed}" />
                <Label
                    Grid.Row="2"
                    Grid.Column="1"
                    HorizontalTextAlignment="End"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player1BallsPocketed}" />
                <!--  Player 1 Bad Position  -->
                <Label
                    Grid.Row="2"
                    Grid.Column="2"
                    HorizontalTextAlignment="Start"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.BadPosition}" />
                <Label
                    Grid.Row="2"
                    Grid.Column="3"
                    HorizontalTextAlignment="End"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player1BadPosition}" />
                <!--  Player 2 Balls Pocketed  -->
                <Label
                    Grid.Row="2"
                    Grid.Column="4"
                    HorizontalTextAlignment="Start"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.Pocketed}" />
                <Label
                    Grid.Row="2"
                    Grid.Column="5"
                    HorizontalTextAlignment="End"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player2BallsPocketed}" />
                <!--  Player 2 Bad Position  -->
                <Label
                    Grid.Row="2"
                    Grid.Column="6"
                    HorizontalTextAlignment="Start"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.BadPosition}" />
                <Label
                    Grid.Row="2"
                    Grid.Column="7"
                    HorizontalTextAlignment="End"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player2BadPosition}" />
                <!--  Player 1 Bad Safety  -->
                <Label
                    Grid.Row="3"
                    Grid.Column="0"
                    HorizontalTextAlignment="Start"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.BadSafety}" />
                <Label
                    Grid.Row="3"
                    Grid.Column="1"
                    HorizontalTextAlignment="End"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player1BadSafety}" />
                <!--  Player 1 Misses  -->
                <Label
                    Grid.Row="3"
                    Grid.Column="2"
                    HorizontalTextAlignment="Start"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.Misses}" />
                <Label
                    Grid.Row="3"
                    Grid.Column="3"
                    HorizontalTextAlignment="End"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player1Misses}" />
                <!--  Player 2 Bad Safety  -->
                <Label
                    Grid.Row="3"
                    Grid.Column="4"
                    HorizontalTextAlignment="Start"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.BadSafety}" />
                <Label
                    Grid.Row="3"
                    Grid.Column="5"
                    HorizontalTextAlignment="End"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player2BadSafety}" />
                <!--  Player 2 Misses  -->
                <Label
                    Grid.Row="3"
                    Grid.Column="6"
                    HorizontalTextAlignment="Start"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.Misses}" />
                <Label
                    Grid.Row="3"
                    Grid.Column="7"
                    HorizontalTextAlignment="End"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player2Misses}" />
                <!--  Player 1 Bad Kicks  -->
                <Label
                    Grid.Row="4"
                    Grid.Column="0"
                    HorizontalTextAlignment="Start"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.BadKick}" />
                <Label
                    Grid.Row="4"
                    Grid.Column="1"
                    HorizontalTextAlignment="End"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player1BadKicks}" />
                <!--  Player 1 Scratches On Break  -->
                <Label
                    Grid.Row="4"
                    Grid.Column="2"
                    HorizontalTextAlignment="Start"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.ScratchOnBreak}" />
                <Label
                    Grid.Row="4"
                    Grid.Column="3"
                    HorizontalTextAlignment="End"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player1ScratchOnBreak}" />
                <!--  Player 2 Bad Kicks  -->
                <Label
                    Grid.Row="4"
                    Grid.Column="4"
                    HorizontalTextAlignment="Start"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.BadKick}" />
                <Label
                    Grid.Row="4"
                    Grid.Column="5"
                    HorizontalTextAlignment="End"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player2BadKicks}" />
                <!--  Player 2 Scratches On Break  -->
                <Label
                    Grid.Row="4"
                    Grid.Column="6"
                    HorizontalTextAlignment="Start"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{x:Static resx:AppResources.ScratchOnBreak}" />
                <Label
                    Grid.Row="4"
                    Grid.Column="7"
                    HorizontalTextAlignment="End"
                    IsVisible="{Binding Player2Enabled}"
                    Style="{StaticResource StatLabelStyle}"
                    Text="{Binding Player2ScratchOnBreak}" />
            </Grid>
            <!--#endregion-->
            <!--#region Innings Grid-->
            <telerik:RadBorder
                BorderColor="{StaticResource NormalTextColor}"
                BorderThickness="1"
                HeightRequest="{OnPlatform Default=225,
                                           Android=225,
                                           iOS=225}"
                WidthRequest="{OnPlatform Default=800,
                                          Android=350,
                                          iOS=315}">
                <telerik:RadDataGrid
                    AutoGenerateColumns="False"
                    ItemsSource="{Binding Innings}"
                    SelectionStyle="{StaticResource CustomSelectionStyle}"
                    UserFilterMode="Disabled"
                    UserSortMode="None">
                    <telerik:RadDataGrid.SortDescriptors>
                        <telerik:PropertySortDescriptor PropertyName="Inning" SortOrder="Descending" />
                    </telerik:RadDataGrid.SortDescriptors>
                    <telerik:RadDataGrid.MouseHoverStyle>
                        <telerik:DataGridBorderStyle BackgroundColor="{StaticResource MouseHoverBackgroundColor}" />
                    </telerik:RadDataGrid.MouseHoverStyle>
                    <telerik:RadDataGrid.Columns>
                        <telerik:DataGridNumericalColumn
                            CanUserEdit="False"
                            CellContentStyle="{StaticResource CustomDataGridTextCellStyle}"
                            CellContentStyleSelector="{StaticResource RotationCellContentSelector}"
                            HeaderStyle="{StaticResource CustomDataGridColumnHeaderStyle}"
                            HeaderText="{x:Static resx:AppResources.Inning}"
                            PropertyName="Inning"
                            SizeMode="Stretch" />
                        <telerik:DataGridNumericalColumn
                            CanUserEdit="False"
                            CellContentStyle="{StaticResource CustomDataGridTextCellStyle}"
                            CellContentStyleSelector="{StaticResource RotationCellContentSelector}"
                            HeaderStyle="{StaticResource CustomDataGridColumnHeaderStyle}"
                            HeaderText="{x:Static resx:AppResources.Run}"
                            PropertyName="Run"
                            SizeMode="Stretch" />
                        <telerik:DataGridTextColumn
                            CanUserEdit="False"
                            CellContentStyle="{StaticResource CustomDataGridTextCellStyle}"
                            CellContentStyleSelector="{StaticResource RotationCellContentSelector}"
                            HeaderStyle="{StaticResource CustomDataGridColumnHeaderStyle}"
                            HeaderText="{x:Static resx:AppResources.Notation}"
                            PropertyName="Notation"
                            SizeMode="Stretch" />
                        <telerik:DataGridTextColumn
                            CanUserEdit="False"
                            CellContentStyle="{StaticResource CustomDataGridTextCellStyle}"
                            HeaderStyle="{StaticResource CustomDataGridColumnHeaderStyle}"
                            HeaderText="{x:Static resx:AppResources.Modifier}"
                            PropertyName="Modifier"
                            SizeMode="Stretch" />
                        <telerik:DataGridTextColumn
                            CanUserEdit="False"
                            CellContentStyle="{StaticResource CustomDataGridTextCellStyle}"
                            HeaderStyle="{StaticResource CustomDataGridColumnHeaderStyle}"
                            HeaderText="{x:Static resx:AppResources.Foul}"
                            PropertyName="Foul"
                            SizeMode="Stretch" />
                        <telerik:DataGridTextColumn
                            CanUserEdit="False"
                            CellContentStyle="{StaticResource CustomDataGridTextCellStyle}"
                            HeaderStyle="{StaticResource CustomDataGridColumnHeaderStyle}"
                            HeaderText="{x:Static resx:AppResources.Optional}"
                            PropertyName="Optional"
                            SizeMode="Stretch" />
                    </telerik:RadDataGrid.Columns>
                </telerik:RadDataGrid>
            </telerik:RadBorder>
            <!--#endregion-->
        </FlexLayout>
    </ContentView.Content>
</ContentView>
I was new to Xamarin Forms when I started this project. Have I written 'bad' XAML?
Didi
Telerik team
 answered on 25 Aug 2022
0 answers
235 views
Hi, I was wondering how to implement automation for the RadComboBox. We are using Appium for our automation testing and attaching an Automation ID to the RadComboBox does not allow us to interact with it at all

We are attaching our Automation ID like this

<telerik:RadComboBox AutomationId="RadComboBox_Test" />

Scott
Top achievements
Rank 1
 asked on 24 Aug 2022
1 answer
101 views

I know you can set the StrokeLineCap on the default MAUI canvas object but I can't find a similar option in the Telerik controls. 

I am trying to draw something like in the attached pic. This is easy enough with your RadArc but there doesn't seem to be an option for rounded ends. 

The example app has a straight line with rounded ends but this is achieved by putting arcs on either end manually. I will be animating this as well so manually animating custom rounded ends as the arc moves around could be tricky.

Any suggestions?

Thanks!

Didi
Telerik team
 answered on 24 Aug 2022
1 answer
270 views

Hi, I ran into an issue the other day with the RadComboBox.

I have a RadComboBox with an ItemTemplate and a FooterTemplate. The FooterTemplate has a button inside it and the Item Template has some Labels and Images data bound to the ViewModel. When I run my app and I tap on the drop down in the RadComboBox, the footer pushes the items up and also overlays some of the items. Below is an image of my issue. I'm currently running 1.0.1 and have updated to 2.30 and experienced the same issue.

Didi
Telerik team
 answered on 23 Aug 2022
Top users last month
Anislav
Top achievements
Rank 6
Silver
Bronze
Bronze
Jianxian
Top achievements
Rank 1
Iron
Marco
Top achievements
Rank 3
Iron
Iron
Iron
Jim
Top achievements
Rank 2
Iron
Iron
Nurik
Top achievements
Rank 2
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?