diff options
-rw-r--r-- | Xamarin.Forms.Platform.Tizen/Native/ListView.cs | 35 |
1 files changed, 33 insertions, 2 deletions
diff --git a/Xamarin.Forms.Platform.Tizen/Native/ListView.cs b/Xamarin.Forms.Platform.Tizen/Native/ListView.cs index d5531dc4..e932a28e 100644 --- a/Xamarin.Forms.Platform.Tizen/Native/ListView.cs +++ b/Xamarin.Forms.Platform.Tizen/Native/ListView.cs @@ -85,10 +85,32 @@ namespace Xamarin.Forms.Platform.Tizen.Native GenItemClass _headerFooterItemClass = null; /// <summary> + /// Indicates if the list view has uneven rows. + /// </summary> + bool _hasUnevenRows = false; + + /// <summary> + /// Indicates if grouping in the list view is enabled. + /// </summary> + bool _isGroupingEnabled = false; + + /// <summary> /// Gets or sets a value indicating whether this instance has grouping enabled. /// </summary> /// <value><c>true</c> if this instance has grouping enabled.</value> - public bool IsGroupingEnabled { get; set; } + public bool IsGroupingEnabled + { + get + { + return _isGroupingEnabled; + } + + set + { + _isGroupingEnabled = value; + UpdateHomogeneousMode(); + } + } /// <summary> /// Constructor of ListView native control. @@ -124,7 +146,8 @@ namespace Xamarin.Forms.Platform.Tizen.Native /// <param name="hasUnevenRows">If <c>true</c>, the list will allow uneven sizes for its rows.</param> public void SetHasUnevenRows(bool hasUnevenRows) { - Homogeneous = !hasUnevenRows; + _hasUnevenRows = hasUnevenRows; + UpdateHomogeneousMode(); UpdateRealizedItems(); } @@ -597,5 +620,13 @@ namespace Xamarin.Forms.Platform.Tizen.Native } return _headerFooterItemClass; } + + /// <summary> + /// Updates the homogeneous mode of the list view. + /// </summary> + void UpdateHomogeneousMode() + { + Homogeneous = !_hasUnevenRows && !_isGroupingEnabled; + } } } |