The scrollbar on UWP is blocking the content (including the options button which is also not clickable because of it
Workaround: Add a style for the column header and apply margin to the Options button:
<ContentPage.Resources>
<ResourceDictionary>
<telerikGrid:DataGridColumnHeaderStyle x:Key="headerstyle"
TextColor="Black" OptionsButtonMargin="0,0,20,0"
OptionsButtonFontSize="30"
BorderColor="Black"
BorderThickness="2"/>
</ResourceDictionary>
</ContentPage.Resources>
<Grid>
<telerikGrid:RadDataGrid ItemsSource="{Binding Items}" BackgroundColor="Red" AutoGenerateColumns="false">
<telerikGrid:RadDataGrid.Columns>
<telerikGrid:DataGridTextColumn PropertyName="Country" HeaderStyle="{StaticResource headerstyle}"/>
<telerikGrid:DataGridTextColumn PropertyName="Capital" HeaderStyle="{StaticResource headerstyle}"/>
</telerikGrid:RadDataGrid.Columns>
</telerikGrid:RadDataGrid>
</Grid>
Having a ComboBox inside the RadListView ItemTemplate.
Binding the ComboBox SelectedItems.
On UWP when PropertyChanged is called on an item in the ListView, it fires the ComboBox SelectedItems CollectionChanged with action Remove, which is wrong behavior. And as a result the ComboBox SelectedItems collection is cleared.
On Android an iOS works as expected, the ComboBox SelectedItems collection is not cleared.
LongPress is called on element that is already disposed.
ObjectDisposedException is thrown:
at Telerik.XamarinForms.Common.NativeGestureRecognizer.ToDip
at Telerik.XamarinForms.Common.GestureListener.OnLongPress
Stack-Trace
Xamarin Exception Stack: System.ObjectDisposedException: Cannot access a disposed object. Object name: 'Xamarin.Forms.Platform.Android.Platform+DefaultRenderer'. at Java.Interop.JniPeerMembers.AssertSelf (Java.Interop.IJavaPeerable self) [0x00029] in <2e109281f9514c53b44688fd4549adb2>:0 at Java.Interop.JniPeerMembers+JniInstanceMethods.InvokeNonvirtualObjectMethod (System.String encodedMember, Java.Interop.IJavaPeerable self, Java.Interop.JniArgumentValue* parameters) [0x00000] in <2e109281f9514c53b44688fd4549adb2>:0 at Android.Views.View.get_Context () [0x0000a] in <9d68875f5dbd432db5314e1c0d96cb02>:0 at Telerik.XamarinForms.Common.NativeGestureRecognizer.ToDip (System.Single px) [0x00000] in <9f139977bc32402dabe4bb05ac247bb2>:0 at Telerik.XamarinForms.Common.GestureListener.OnLongPress (Android.Views.MotionEvent e) [0x0000c] in <9f139977bc32402dabe4bb05ac247bb2>:0 at Android.Views.GestureDetector+IOnGestureListenerInvoker.n_OnLongPress_Landroid_view_MotionEvent_ (System.IntPtr jnienv, System.IntPtr native__this, System.IntPtr native_e) [0x0000f] in <9d68875f5dbd432db5314e1c0d96cb02>:0 at (wrapper dynamic-method) Android.Runtime.DynamicMethodNameCounter.102(intptr,intptr,intptr)
The issue occurs on the following device:
Android: 12The app crashes randomly when scrolling through the images loaded from the tagit app.
The crash occurs on iPhone SE 2020 iOS 14.8, it doesn't crash every time you scroll through the images, the crash appears randomly.
crash on iPhone X iOS 14.8
The issue cannot be reproduced on iPhone 12 ProMax iOS 14.8.
We are attempting to use the chart's CartesianPlotBandAnnotation to highlight a section of a graph on a DateTimeContinuousAxis. This works well on Android, but in our code it produces an exception on iOS (stack trace below).
I attempted to reproduce the problem with the SDKBrowser solution. I converted the PlotBandAnnotationsCSharp to use a DateTimeContinuousAxis on the horizontal axis, and TemporalData for the ViewModel. When I try to run this on an iOS simulator, it doesn't even navigate to the page; maybe an exception is being thrown and caught that I can't see.
I'm attaching the revised SDKBrowser solution, and including the stack trace from our app (below).
System.ArgumentNullException: Value cannot be null.
Currently TelerikLocalizationManager sets CurrentThread.CurrentCulture on Android and iOS taking into account the target device culture.
The chart's series are not detecting property changed notifications on items in the series.
Note:
Reproducible
If you have a data model where the properties are using INotifyPropertyChanged, for example from your NotifyPropertyChangedBase
public class Item : NotifyPropertyChangedBase
{
private DateTime date;
private int value;
public DateTime Date
{
get => date;
set => UpdateValue(ref date, value);
}
public int Value
{
get => value;
set => UpdateValue(ref this.value, value);
}
}
Here's a view model to use, invoke the command to observe the problem
public class MainViewModel : NotifyPropertyChangedBase
{
public MainViewModel()
{
var rand = new Random();
DataPoints = new ObservableCollection<Item>(Enumerable.Range(1,5).Select(i=>new Item
{
Date = DateTime.Today.AddDays(-i),
Value = rand.Next(1,10)
}));
ChangeDataCommand = new Command(() =>
{
foreach (var dataPoint in DataPoints)
{
dataPoint.Value = rand.Next(1, 20);
}
});
}
private ObservableCollection<Item> dataPoints;
public ObservableCollection<Item> DataPoints
{
get => dataPoints;
set => UpdateValue(ref dataPoints, value);
}
public Command ChangeDataCommand { get; set; }
}
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<telerikChart:RadCartesianChart x:Name="Chart">
<telerikChart:RadCartesianChart.HorizontalAxis>
<telerikChart:DateTimeContinuousAxis LabelFormat="MM-dd"
LabelFitMode="Rotate" />
</telerikChart:RadCartesianChart.HorizontalAxis>
<telerikChart:RadCartesianChart.VerticalAxis>
<telerikChart:NumericalAxis Minimum="0" Maximum="10"/>
</telerikChart:RadCartesianChart.VerticalAxis>
<telerikChart:RadCartesianChart.Series>
<telerikChart:LineSeries ValueBinding="Value"
CategoryBinding="Date"
ItemsSource="{Binding DataPoints}" />
</telerikChart:RadCartesianChart.Series>
</telerikChart:RadCartesianChart>
<Button Text="Change Data"
Command="{Binding ChangeDataCommand}"
HorizontalOptions="Fill"
Margin="5"
Grid.Row="1"/>
</Grid>
<telerik:RadBusyIndicator
HorizontalOptions="FillAndExpand"
VerticalOptions="FillAndExpand"
IsBusy="{Binding IsBusy}"
IsVisible="{Binding IsBusy}"
AnimationContentHeightRequest="60"
AnimationContentWidthRequest="60"
AnimationType="Animation3"
AnimationContentColor="{DynamicResource BrandPrimaryColor}">
<telerik:RadBusyIndicator.BusyContent>
<Label Text="{Binding BusyContent}" HorizontalOptions="Center"/>
</telerik:RadBusyIndicator.BusyContent>
</telerik:RadBusyIndicator>
RdBusyIndicator BusyContent data binding does not work for the above Label inside the "telerik:RadBusyIndicator.BusyContent". If a string constant is assigned to the Text(for example "Loading..."), then it works perfectly.
The view model 100% has the property "BusyContent" with a value. By the way, the IsBusy and IsVisible data binding work fine.
Use the following code to reproduce the behavior described in the issue title:
<telerikInput:RadButton BorderThickness="10,0,0,0" BorderColor="Blue" Clicked="RadButton_Clicked"/>
private void RadButton_Clicked(object sender, EventArgs e)
{
RadButton btn = (RadButton)sender;
if (btn.BorderColor == Color.Blue)
{
btn.BackgroundColor = Color.Yellow;
btn.BorderColor = Color.Red;
}
else
{
btn.BorderColor = Color.Blue;
btn.BackgroundColor = Color.Cyan;
}
}
Both the BackgroundColor and BorderColor change without any changes to BorderThickness.
The RadButton's border disappears. Note that even if I programmatically set BorderThickness in the same click event, it is still not visible again.
This is reproducible using 2020.1.318 and minimum required dependencies on Android.
When you have a page with RadCalendar and DayViewSettings properties are data-bound, navigating back in Prism raises a "Cannot destroy page" exception.
If we have a ListView with a CheckBox inside the ItemTemplate and the whole ListView is placed in a Popup control, following the next steps:
1. Open the popup
2. Check and uncheck the CheckBox control in any of the items.
3. Click into the popup and then outside to close it.
NullReferenceException is raised on iOS.
Hi there,
We're struggeling with the radentry control. For login purposes we use one for the password and one for the email. When we set IsPassword=true this does show dots instead of words, but some basic stuff isn't working.
1) The normal entry with IsPassword=true does also hide the suggestion tab that is above the keyboard. We also tried hiding this with other settings but to no result. This control should also hide suggestions since it is a password and we don't want to cache this in any way.
2) When we replace the radentry password field with a xamarin entry password field (so set IsPassword=true on both) then we also get the password fill option. In this case Samsung keypass. I imagine if people are using autofillers such as samsung, google, or something else, that this should also work since i'm stating the field is a password field.
Tested on android with multiple devices.
Thanks in advance!
Martijn