Hello,
TL;DR version - I request that the IFontElement interface (from Microsoft.Maui.Controls.Internals) be implemented on all Rad type controls that display text.
Detailed Version:
The CommunityToolkit.Maui.Markup nuget package provides some really nice extension methods that allow quick and easy configuring of controls without verbosity. When using the toolkit along side Telerik UI every extension I have tried works really well except for .Font(). On all standard MAUI controls you can just call the .Font() extension method and don't need to create a Style and apply it to an underlying property just to set a font size - you just set the size with .Font() as shown below. The below example code snippet shows the normal use of the toolkit on a standard MAUI Label and a RadTimeSpanPicker from the Telerik UI MAUI package.
The above example yields the following error, as does calling .Font() on pretty much every other Radxxxx control. Telerik UI controls seem to work really well with all the other extension methods I have tried from the toolkit except the .Font() extension method.
The type 'Telerik.Maui.Controls.RadTimeSpanPicker' cannot be used as type parameter 'TFontElement' in the generic type or method 'ElementExtensions.Font<TFontElement>(TFontElement, string?, double?, bool?, bool?)'. There is no implicit reference conversion from 'Telerik.Maui.Controls.RadTimeSpanPicker' to 'Microsoft.Maui.Controls.Internals.IFontElement'.
It would seem that implementing IFontElement would solve this.
This would be a nice feature and very helpful to anybody using the toolkit with Telerik controls because they could be used the same way as standard MAUI controls.
I looked under the hood a little bit and I believe the interface could/should be implemented on something like RadContentView which seems to be where most interfaces are inherited/implemented, and controls like RadTimePicker inherit from parent controls that eventually inherit from RadContentView.
private void OnEntryFocused(object sender, FocusEventArgs e)
{
if (sender is RadEntry entry && !string.IsNullOrEmpty(entry.Text))
{
entry.CursorPosition = 0;
entry.SelectionLength = entry.Text.Length;
}
}
The main navigation menu is not displayed on surface devices.
The look of the mobile page is displayed.
Nice job on Telerik, Kendo UI and Test Studio R3 2022! I like the PDF Viewer UI Controls. Question: Any plans to add annotations and comments to client-side .NET Blazor MAUI libraries such as this serverside solution
Hi Team,
This is specifically a feature request to add a new control, or Window extension, that allows desktop developers to show a splashscreen window on the target desktop platform.
We understand this is not possible on mobile targets, but it would be nice to have for desktop,
For inspiration, see the Telerik UI for WPF RadSplashScreen control => WPF SplashScreen | Overview | Telerik UI for WPF
ListView with a TemplateSelector crashes on iOS 16 device!
<telerik:RadListView ItemTemplate="{StaticResource ActTempSelector}" ItemsSource="{Binding Suggestions}">
</telerik:RadListView>
log output is the following:
2022-10-08 20:44:46.810 Xamarin.PreBuilt.iOS[1593:343579] *** NSForwarding: warning: object 0x281edbea0 of class 'Telerik_Maui_Controls_Compatibility_DataControlsRenderer_iOS_TKExtendedListView' does not implement methodSignatureForSelector: -- trouble ahead
2022-10-08 20:44:46.810 Xamarin.PreBuilt.iOS[1593:343579] *** NSForwarding: warning: object 0x281edbea0 of class 'Telerik_Maui_Controls_Compatibility_DataControlsRenderer_iOS_TKExtendedListView' does not implement doesNotRecognizeSelector: -- abort
I am using the SDKBrowser app to demonstrate the problem. This does not happen on the emulator but on my physical device (Samsung S22). I have created a video and attached it.
When I enter a value into the Numeric input and click on the "." button, the entry does create a "," sign. This is fine but the cursor jumps back in front of the comma. I have to physically move the cursor back and can only then continue entering the decimal values.
The second problem is, if I accidently click the "." a second time after entering the decimal values, the app crashes.
I suspected it could be the language settings on the device. I am from South Africa and change the language of the device from English (South Africa) to English (United States) and then it works as expected. Regardless of this, I would expect the control to work with any culture.
Hello,
I am trying to run the Controls Sample to get familiar with the controls. However, I am unable to run the app on my attached iPhone.
The app begins to load and then crashes.
2022-09-28 15:09:46.859 Xamarin.PreBuilt.iOS[28369:1992314] Could not resolve assembly Microsoft.VisualStudio.DesignTools.TapContract, Version=17.0.0.0, Culture=neutral, PublicKeyToken=null. Details: Could not load file or assembly '/var/mobile/Containers/Data/Application/46038C78-9283-4AE5-A2D9-7EA2D530A685/Documents/ControlsSamples.content/Microsoft.VisualStudio.DesignTools.TapContract.dll' or one of its dependencies.
Hi Team,
Currently, Telerik UI for MAUI works implicitly with the standard MSIX packaged WinUI 3 app. However, if I manually bypass that and use msbuild to build an unpackaged, self-contained exe, some of the resources are not embedded.
This feature request is for UI for MAUI to implicitly support unpackaged apps without the developer needing to do anything for the destination environment (fonts, etc.)
Hi there,
just realized that Telerik MAUI UI doesn't have a Calendar/Scheduler control, quite surprised. Is this kind of control already on your road map? When will it be available? We need it mainly for macOS and iOS.
Regards
Hi, I have created a page with a DataGrid on. I have set the datagrid as editable. When I run the app and double click on a cell the cell changes to an entry but the cell keeps on growing. It is also not very responsive then. Only when I tap somewhere else the cell changes back and it returns to its original size.
This only happens on Android.
Here is my XAML
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="FertilizerFarm.View.LeafAnalysisEditPage"
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui"
xmlns:viewmodel="clr-namespace:FertilizerFarm.ViewModel"
x:DataType="viewmodel:LeafAnalysisEditViewModel"
xmlns:custom_components="clr-namespace:FertilizerFarm.View.Components"
Title="Leaf Analysis Detail">
<ContentPage.ToolbarItems>
<ToolbarItem Text="Save"
IconImageSource="save_icon.png"
Command="{Binding EditCommand}"
Order="Primary"
Priority="0" />
</ContentPage.ToolbarItems>
<StackLayout>
<VerticalStackLayout>
<Label Text="Land" Margin="10,12,10,0" FontSize="10" FontAttributes="Bold" TextColor="{StaticResource Primary}"></Label>
<telerik:RadComboBox IsClearButtonVisible="False"
ItemsSource="{Binding LandList}"
DisplayMemberPath="LandNumber"
Margin="10,0,10,2"
SearchTextPath="LandNumber"
SelectedItem="{Binding SelectedLand, Mode=TwoWay}"
SelectionMode="Single"
IsEditable="True"/>
<telerik:RadDataGrid x:Name="dataGrid" UserEditMode="Cell" ItemsSource="{Binding LeafAnalysis.Detail}" AutoGenerateColumns="False" UserFilterMode="Disabled">
<telerik:RadDataGrid.Columns>
<telerik:DataGridTextColumn PropertyName="Chemical" CanUserEdit="False"
HeaderText="Chemical">
<telerik:DataGridTextColumn.CellContentStyle>
<telerik:DataGridTextCellStyle TextColor="Green"
FontSize="15"
SelectedTextColor="Orange" />
</telerik:DataGridTextColumn.CellContentStyle>
</telerik:DataGridTextColumn>
<telerik:DataGridTextColumn PropertyName="OptimalValue" CanUserEdit="False"
HeaderText="Optimal">
</telerik:DataGridTextColumn>
<telerik:DataGridTextColumn PropertyName="ChemicalValue"
HeaderText="Value">
</telerik:DataGridTextColumn>
<telerik:DataGridTextColumn PropertyName="Measurement" CanUserEdit="False"
HeaderText="">
</telerik:DataGridTextColumn>
</telerik:RadDataGrid.Columns>
</telerik:RadDataGrid>
</VerticalStackLayout>
</StackLayout>
</ContentPage>
Here is my ViewModel
using FertilizerFarm.Services;
namespace FertilizerFarm.ViewModel;
[QueryProperty(nameof(LeafAnalysis), "LeafAnalysis")]
public partial class LeafAnalysisEditViewModel : BaseViewModel
{
[ObservableProperty]
LeafAnalysis leafAnalysis;
[ObservableProperty]
bool isRefreshing;
[ObservableProperty]
ObservableCollection<Land> landList;
[ObservableProperty]
Land selectedLand;
[ObservableProperty]
string headerText;
public bool Initiated { get; protected set; }
IConnectivity connectivity;
private readonly LeafAnalysisService leafService;
private readonly LandService landService;
public LeafAnalysisEditViewModel(IConnectivity connectivity, LeafAnalysisService leafService, LandService landService)
{
this.connectivity=connectivity;
this.leafService=leafService;
this.landService=landService;
Initialize = GetData();
}
public Task Initialize { get; }
private async Task GetData()
{
var lands = await landService.GetLandsForUser();
LandList = new ObservableCollection<Land>(lands);
if (LandList.Count == 0)
{
// show error
}
else
{
SelectedLand = landList[0];
LeafAnalysis = await leafService.GetNew(LandList[0].Id);
}
Initiated = true;
}
[RelayCommand]
async Task Edit()
{
if (IsBusy)
return;
}
}
If you can't replicate I will scale down our current project to demonstrate the problem.
<VerticalStackLayout>
<Label
Text="Welcome to .NET MAUI!"
VerticalOptions="Center"
HorizontalOptions="Center" />
<Label Text="Status:" />
<telerik:RadComboBox/>
</VerticalStackLayout>
This works for Android. IOS gives error "Cannot resolve type "http://schemas.telerik.com/2022/xaml/maui:telerik:RadComboBox"
But telerik:RadCheckBox does not have the same problem.
<VerticalStackLayout>
<Label
Text="Welcome to .NET MAUI!"
VerticalOptions="Center"
HorizontalOptions="Center" />
<Label Text="Status:" />
<telerik:RadCheckBox IsChecked="True"/>
</VerticalStackLayout>
Will work for IOS and Android.
How do I fix this?
I am using VS Community 2022 Preview
Version 17.3.0 Preview 6.0
and Telerik.UI.for.Maui.Trial 2.2.0
Hi Team,
Please add a base TFM for net6.0 to the Telerik.UI.for.MAUI libraries so that test projects are compatible with .NET MAUI projects referencing the Telerik package.
Thank you,
Allen
Adding a MAUI TFM to the test project doesn't appear to be a solution as it doesn't find a test runner for that MAUI target. Here's an example of the type of error when I try that approach:
========== Starting test discovery ==========
Microsoft.VisualStudio.TestPlatform.ObjectModel.TestPlatformException: Testhost process exited with error: You must install or update .NET to run this application.
App: [redacted]\ProjectB.Test\bin\Debug\net6.0-windows10.0.19041.0\testhost.exe
Architecture: x64
Framework: 'Microsoft.Maui.Core', version '**FromWorkload**' (x64)
.NET location: C:\Program Files\dotnet
No frameworks were found.
Learn about framework resolution:
https://aka.ms/dotnet/app-launch-failed
To install missing framework, download:
https://aka.ms/dotnet-core-applaunch?framework=Microsoft.Maui.Core&framework_version=**FromWorkload**&arch=x64&rid=win10-x64
. Please check the diagnostic logs for more information.
at Microsoft.VisualStudio.TestPlatform.CrossPlatEngine.Client.ProxyOperationManager.ThrowOnTestHostExited(Boolean testHostExited)
at Microsoft.VisualStudio.TestPlatform.CrossPlatEngine.Client.ProxyOperationManager.SetupChannel(IEnumerable`1 sources, String runSettings)
at Microsoft.VisualStudio.TestPlatform.CrossPlatEngine.Client.ProxyDiscoveryManager.DiscoverTests(DiscoveryCriteria discoveryCriteria, ITestDiscoveryEventsHandler2 eventHandler)
========== Test discovery aborted: 0 Tests found in 68.4 ms ==========
========== Starting test run ==========
========== Test run finished: 0 Tests (0 Passed, 0 Failed, 0 Skipped) run in < 1 ms ==========
When update to 2.2.0, Running by IOS Emulator failed,but version 2.1.0 is worked.
Error Msg : The type initializer for 'SkiaSharp.SKObject' threw an exception.
Please refer to image.