private void OnColumnReordered(object sender, ColumnReorderedEventArgs e)
        {               //****************************************
            ColumnBinding MyBinding = _Columns[e.OldDisplayIndex];

            //****************************************

            _Columns.RemoveAt(e.OldDisplayIndex);
            _Columns.Insert(e.NewDisplayIndex, MyBinding);

            foreach (BoundItem MyItem in _ListView.Items)
            {
                MyItem.RefreshContents();
            }
        }
        protected override void SetSelection(object newValue)
        {
            foreach (BoundItem MyItem in _ListView.Items)
            {
                if (MyItem.ItemValue != newValue)
                {
                    continue;
                }

                if (GetSelection() == newValue)
                {
                    MyItem.Selected = true;
                    MyItem.RefreshContents();
                    return;
                }

                BubbleSelection = false;
                MyItem.Selected = true;
                BubbleSelection = true;

                return;
            }
        }