private void SetSortAdorner(Visual visual, ref Adorner adorner, bool isSorted, bool isDescendingSort, bool isSecondaryAdorner)
        {
            if (null != adorner)
            {
                AdornerLayer.GetAdornerLayer(visual)?.Remove(adorner);
                adorner = null;
            }

            if (isSorted)
            {
                adorner = new Common.SortAdorner((UIElement)visual, isDescendingSort ? ListSortDirection.Descending : ListSortDirection.Ascending, isSecondaryAdorner);
                var adornerLayer = AdornerLayer.GetAdornerLayer(visual); // adornerLayer is valid only after the visual was visible for the first time
                if (null != adornerLayer)
                {
                    adornerLayer.Add(adorner);
                }
            }
        }
		private void SetSortAdorner(Visual visual, ref Adorner adorner, bool isSorted, bool isDescendingSort, bool isSecondaryAdorner)
		{
			if (null != adorner)
			{
				AdornerLayer.GetAdornerLayer(visual).Remove(adorner);
				adorner = null;
			}

			if (isSorted)
			{
				adorner = new Common.SortAdorner((UIElement)visual, isDescendingSort ? ListSortDirection.Descending : ListSortDirection.Ascending, isSecondaryAdorner);
				var adornerLayer = AdornerLayer.GetAdornerLayer(visual); // adornerLayer is valid only after the visual was visible for the first time
				if (null != adornerLayer)
					adornerLayer.Add(adorner);
			}
		}