Inheritance: System.ComponentModel.TypeConverter
        private void UpdatePropertyGridMembers()
        {

            var member = GetPropertyGridMember("BuildTool");
            if (member != null)
            {
                var availableTools = new AvailableBuildTools();
                availableTools.ShowNewApplication = false;
                ReferencedFileSave instance = ((ReferencedFileSave)Instance);
                if (instance != null && !string.IsNullOrEmpty(instance.SourceFile))
                {

                    availableTools.SourceFileExtensionRestriction = FileManager.GetExtension(instance.SourceFile);
                }
                member.TypeConverter = availableTools;
            }
        }
        private void UpdatePropertyGridMembers()
        {

            var member = GetPropertyGridMember("BuildTool");
            if (member != null)
            {
                var availableTools = new AvailableBuildTools();
                availableTools.ShowNewApplication = false;

                ReferencedFileSave instance = ((ReferencedFileSave)Instance);
                var extension = FileManager.GetExtension(instance.Name);

                availableTools.ShowNoneOption = Elements.AvailableAssetTypes.Self.AllAssetTypes
                    .Any(item => item.Extension == extension && string.IsNullOrEmpty(item.CustomBuildToolName));


                if (instance != null && !string.IsNullOrEmpty(instance.SourceFile))
                {

                    availableTools.SourceFileExtensionRestriction = FileManager.GetExtension(instance.SourceFile);
                }
                member.TypeConverter = availableTools;
            }
        }