public override string CheckCanUpdateData(ResourceElement newResElem)
        {
            var res = base.CheckCanUpdateData(newResElem);

            if (!string.IsNullOrEmpty(res))
            {
                return(res);
            }

            var binData = (BinaryResourceData)newResElem.ResourceData;

            byte[] imageData;
            if (!SerializedImageResourceElementTreeNodeFactory.GetImageData(GetModule(this), binData.TypeName, binData.Data, out imageData))
            {
                return("The new data is not an image.");
            }

            try {
                ImageResourceElementTreeNode.CreateImageSource(imageData);
            }
            catch {
                return("The new data is not an image.");
            }

            return(string.Empty);
        }
        public override void UpdateData(ResourceElement newResElem)
        {
            base.UpdateData(newResElem);

            var binData = (BinaryResourceData)newResElem.ResourceData;

            byte[] imageData;
            SerializedImageResourceElementTreeNodeFactory.GetImageData(GetModule(this), binData.TypeName, binData.Data, out imageData);
            InitializeImageData(imageData);
        }