public override void UpdateDisplayedColor(CCColor3B parentColor)
        {
            var displayedColor = CCColor3B.White;

            displayedColor.R = (byte)(RealColor.R * parentColor.R / 255.0f);
            displayedColor.G = (byte)(RealColor.G * parentColor.G / 255.0f);
            displayedColor.B = (byte)(RealColor.B * parentColor.B / 255.0f);

            UpdateColor();

            if (scale9Image != null)
            {
                scale9Image.UpdateDisplayedColor(displayedColor);
            }

            foreach (var child in protectedChildren)
            {
                child.UpdateDisplayedColor(displayedColor);
            }

            if (IsColorCascaded && Children != null)
            {
                foreach (var child in Children)
                {
                    child.UpdateDisplayedColor(displayedColor);
                }
            }
        }