示例#1
0
        public ObjectPropertyViewModel(TargetPlatform targetPlatform, IPropertyInfo property, IEnumerable <IObjectEditor> editors, PropertyVariation variation = null)
            : base(targetPlatform, property, editors, variation)
        {
            if (targetPlatform == null)
            {
                throw new ArgumentNullException(nameof(targetPlatform));
            }

            ValueModel = new ObjectViewModel(targetPlatform);
            RequestCurrentValueUpdate();
            CreateInstanceCommand = new RelayCommand(CreateInstance, () => IsAvailable && !IsCreateInstancePending);
        }
示例#2
0
        public ObjectPropertyViewModel(IEditorProvider provider, TargetPlatform targetPlatform, IPropertyInfo property, IEnumerable <IObjectEditor> editors)
            : base(targetPlatform, property, editors)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }
            if (targetPlatform == null)
            {
                throw new ArgumentNullException(nameof(targetPlatform));
            }

            this.provider = provider;
            ValueModel    = new ObjectViewModel(provider, targetPlatform);
            RequestCurrentValueUpdate();

            QueryTypes();
            CreateInstanceCommand = new RelayCommand(CreateInstance, () => IsAvailable && !IsCreateInstancePending);
            ClearValueCommand     = new RelayCommand(OnClearValue, CanClearValue);
        }