When adding for examples, ComboBox/AutoComplete, Pickers inside RadPopup and open the pickers/combo dropdown. Then close the RadPopup, the popup of the pickers/combo/autocomplete stays open. The behavior occurs on iOS, MacCatalyst and WinUI. On Android exception is thrown.
Popup:
Calling
IsOpen = true,
IsOpen = false,
IsOpen = true,
IsOpen = false,
while the last IsOpen update isn't ready, kills the Popup.
It works async, even if animations are set to none/0s and there is no public event to validate the last update is fully done (Popup opened/closed)
In my case i have a popup opened, while a search operation is running in the background.
If this background search returns too fast and i set IsOpen to false, the update is ignored and the popup keeps in an opened state.
Hi Team,
You can replicate this behavior with the following code in a preview14 MAUI project with Telerik UI for MAUI v0.6.0.
Notes:
<?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="MyApp.MainPage"
BackgroundColor="{DynamicResource SecondaryColor}">
<Grid x:Name="RootGrid">
<Label Text="Stuff" />
</Grid>
</ContentPage>
using Telerik.XamarinForms.Primitives;
namespace MyApp;
public partial class MainPage : ContentPage
{
RadPopup popup;
public MainPage()
{
InitializeComponent();
popup = new RadPopup();
popup.PlacementTarget = this;
popup.Placement = PlacementMode.Center;
popup.IsModal = true;
popup.OutsideBackgroundColor = Color.FromArgb("#FF0000");
popup.Content = new Label { Text = "Hello Telerik Popup!" };
}
}
at Telerik.RadMauiControlsHelper.<>c.<.cctor>b__0_0()
at Telerik.RadMauiCoreHelper.get_MauiContext()
at Telerik.XamarinForms.Primitives.RadPopup.SetPopupIsOpen(Boolean value)
at Telerik.XamarinForms.Primitives.RadPopup.UpdatePopup()
at Telerik.XamarinForms.Primitives.PopupBase.OnPlacementTargetChanged()
at Telerik.XamarinForms.Primitives.PopupBase.<>c.<.cctor>b__113_3(BindableObject b, Object o, Object n)
at Microsoft.Maui.Controls.BindableObject.SetValueActual(BindableProperty property, BindablePropertyContext context, Object value, Boolean currentlyApplying, SetValueFlags attributes, Boolean silent)
at Microsoft.Maui.Controls.BindableObject.SetValueCore(BindableProperty property, Object value, SetValueFlags attributes, SetValuePrivateFlags privateAttributes)
at Microsoft.Maui.Controls.BindableObject.SetValue(BindableProperty property, Object value, Boolean fromStyle, Boolean checkAccess)
at Microsoft.Maui.Controls.BindableObject.SetValue(BindableProperty property, Object value)
at Telerik.XamarinForms.Primitives.PopupBase.set_PlacementTarget(VisualElement value)