WpfDataUi.DataUiGrid.RefreshDelegateBasedElementVisibility C# (CSharp) Method

RefreshDelegateBasedElementVisibility() private method

private RefreshDelegateBasedElementVisibility ( ) : void
return void
        private void RefreshDelegateBasedElementVisibility()
        {
            foreach (var kvp in mMembersWithOptionalVisibility)
            {
                var member = kvp.Key;
                var category = member.Category;
                bool shouldBeVisible = !kvp.Value(member);
                bool isVisible = category.Members.Contains(member);

                if (isVisible && !shouldBeVisible)
                {
                    category.Members.Remove(kvp.Key);
                }
                else if (!isVisible && shouldBeVisible)
                {
                    category.Members.Add(member);
                }
            }
        }