private void FillStylesCollection()
        {
            if (!_isViewLoaded)
            {
                return;
            }

            var tree = View.DataControl as CustomTreeListControl;

            if (tree == null)
            {
                return;
            }

            var stylesCollection = StylesCollection.Where(p => p.IsReadOnly).ToArray();

            StylesCollection.Clear();

            foreach (var p in stylesCollection)
            {
                StylesCollection.Add(p);
            }

            foreach (var o in tree.ExpressionStyleOptions.Options)
            {
                StylesCollection.Add(new StyleOption(o));
            }
        }
        protected override void OnDetaching()
        {
            base.OnDetaching();
            ExprButton.ItemClick -= BarButtonItem_ItemClick;

            View.Loaded -= View_Loaded;

            StylesCollection.CollectionChanged -= StylesCollection_CollectionChanged;
            StylesCollection.Clear();

            View.DataControl.ItemsSourceChanged -= OnItemsSourceChanged;
            var cgc = View.DataControl as CustomTreeListControl;

            if (cgc != null)
            {
                cgc.ExpressionStyleOptionsChanged -= ExpressionStyleOptionsChanged;
            }
        }
        protected override void OnDetaching()
        {
            base.OnDetaching();

            View.Loaded          -= OnViewLoaded;
            ExprButton.ItemClick -= OnExprButtonClick;
            ExprButton            = null;
            if (StylesCollection != null)
            {
                StylesCollection.Clear();
                StylesCollection = null;
            }

            View.Grid.ItemsSourceChanged -= OnGridItemsSourceChanged;
            var cgc = View.Grid as CustomGridControl;

            if (cgc != null)
            {
                cgc.ExpressionStyleOptionsChanged -= ExpressionStyleOptionsChanged;
            }
        }