format BindableProperty & fix a tiny issue about rank page refreshing
This commit is contained in:
@ -5,12 +5,12 @@ namespace Billing.UI
|
||||
{
|
||||
public class GroupStackLayout : Layout<View>
|
||||
{
|
||||
public static readonly BindableProperty GroupHeaderTemplateProperty = BindableProperty.Create(nameof(GroupHeaderTemplate), typeof(DataTemplate), typeof(GroupStackLayout));
|
||||
public static readonly BindableProperty ItemTemplateProperty = BindableProperty.Create(nameof(ItemTemplate), typeof(DataTemplate), typeof(GroupStackLayout));
|
||||
public static readonly BindableProperty ItemsSourceProperty = BindableProperty.Create(nameof(ItemsSource), typeof(IList), typeof(GroupStackLayout), propertyChanged: OnItemsSourcePropertyChanged);
|
||||
public static readonly BindableProperty SpacingProperty = BindableProperty.Create(nameof(Spacing), typeof(double), typeof(GroupStackLayout), defaultValue: 4d);
|
||||
public static readonly BindableProperty RowHeightProperty = BindableProperty.Create(nameof(RowHeight), typeof(double), typeof(GroupStackLayout), defaultValue: 32d);
|
||||
public static readonly BindableProperty GroupHeightProperty = BindableProperty.Create(nameof(GroupHeight), typeof(double), typeof(GroupStackLayout), defaultValue: 24d);
|
||||
public static readonly BindableProperty GroupHeaderTemplateProperty = Helper.Create<DataTemplate, GroupStackLayout>(nameof(GroupHeaderTemplate));
|
||||
public static readonly BindableProperty ItemTemplateProperty = Helper.Create<DataTemplate, GroupStackLayout>(nameof(ItemTemplate));
|
||||
public static readonly BindableProperty ItemsSourceProperty = Helper.Create<IList, GroupStackLayout>(nameof(ItemsSource), propertyChanged: OnItemsSourcePropertyChanged);
|
||||
public static readonly BindableProperty SpacingProperty = Helper.Create<double, GroupStackLayout>(nameof(Spacing), defaultValue: 4d);
|
||||
public static readonly BindableProperty RowHeightProperty = Helper.Create<double, GroupStackLayout>(nameof(RowHeight), defaultValue: 32d);
|
||||
public static readonly BindableProperty GroupHeightProperty = Helper.Create<double, GroupStackLayout>(nameof(GroupHeight), defaultValue: 24d);
|
||||
|
||||
public DataTemplate GroupHeaderTemplate
|
||||
{
|
||||
@ -43,17 +43,16 @@ namespace Billing.UI
|
||||
set => SetValue(GroupHeightProperty, value);
|
||||
}
|
||||
|
||||
private static void OnItemsSourcePropertyChanged(BindableObject obj, object old, object @new)
|
||||
private static void OnItemsSourcePropertyChanged(GroupStackLayout stack, IList old, IList list)
|
||||
{
|
||||
var stack = (GroupStackLayout)obj;
|
||||
stack.lastWidth = -1;
|
||||
if (@new == null)
|
||||
if (list == null)
|
||||
{
|
||||
//stack.cachedLayout.Clear();
|
||||
stack.Children.Clear();
|
||||
stack.InvalidateLayout();
|
||||
}
|
||||
else if (@new is IList list)
|
||||
else
|
||||
{
|
||||
stack.freezed = true;
|
||||
//stack.cachedLayout.Clear();
|
||||
|
Reference in New Issue
Block a user