// if a selection is made in one listbox, invalidate the selection in all others
        private void lb_MouseUp(object sender, MouseButtonEventArgs e)
        {
            ListBox lbSender = sender as ListBox;

            if (lbSender == null)
            {
                return;
            }

            // saved picked color
            object pickedObj = lbSender.SelectedItem;

            if (pickedObj != null)
            {
                IndexColor pickedIC = pickedObj as IndexColor;
                if (pickedIC != null)
                {
                    this.PickedColor = pickedIC.Color;
                    this.PickedIndex = pickedIC.Index;
                }
            }

            // invalidate selection in other listboxes
            var listBoxes = AppHelpers.FindVisualChildren <ListBox>(this);

            foreach (ListBox lb in listBoxes)
            {
                if (lb != lbSender)
                {
                    lb.SelectedItem = null;
                }
            }
        }