public PropertyValueUIItem[] GetPropertyUIValueItems(ITypeDescriptorContext context, PropertyDescriptor propDesc)
		{
			// Let registered handlers have a chance to add their UIItems
			ArrayList propUIValues = new ArrayList();
			if (propertyValueUIHandler != null) {
				propertyValueUIHandler(context,propDesc,propUIValues);
			}
			PropertyValueUIItem[] values = new PropertyValueUIItem[propUIValues.Count];
			if (propUIValues.Count > 0) {
				propUIValues.CopyTo(values);
			}
			return values;
		}
 private void OnPropertyValueUIItemInvoke(ITypeDescriptorContext context, PropertyDescriptor descriptor, PropertyValueUIItem invokedItem)
 {
     LocalUIItem item = (LocalUIItem) invokedItem;
     IServiceProvider service = null;
     Control control = item.Binding.Control;
     if (control.Site != null)
     {
         service = (IServiceProvider) control.Site.GetService(typeof(IServiceProvider));
     }
     if (service != null)
     {
         AdvancedBindingPropertyDescriptor.advancedBindingEditor.EditValue(context, service, control.DataBindings);
     }
 }
        public PropertyValueUIItem[] GetPropertyUIValueItems(System.ComponentModel.ITypeDescriptorContext context, System.ComponentModel.PropertyDescriptor propDesc)
        {
            PropertyValueUIItem[] result = new PropertyValueUIItem[0];
            if (propDesc == null || _UIHandler == null)
            {
                return result;
            }

            ArrayList propertyItems = new ArrayList();
            _UIHandler(context, propDesc, propertyItems);
            if (propertyItems.Count > 0)
            {
                result = new PropertyValueUIItem[propertyItems.Count];
                propertyItems.CopyTo(result);
            }
            return result;
        }
        public PropertyValueUIItem[] GetPropertyUIValueItems( ITypeDescriptorContext context, PropertyDescriptor propDesc )
        {
            ArrayList list = null ;

            if( QueryPropertyUIValueItems != null )
            {
                list = new ArrayList( ) ;
                QueryPropertyUIValueItems( context, propDesc, list ) ;
            }

            if( list == null || list.Count == 0 )
            {
                return new PropertyValueUIItem[ 0 ] ;
            }

            var result = new PropertyValueUIItem[ list.Count ] ;

            list.CopyTo( result ) ;

            return result ;
        }
예제 #5
0
		private void PropertyValueUIItemInvoke (ITypeDescriptorContext context, PropertyDescriptor descriptor, PropertyValueUIItem invokedItem)
		{
		}
 private static void OnValueUIItemInvoke(ITypeDescriptorContext context, PropertyDescriptor propDesc, PropertyValueUIItem invokedItem)
 {
 }
 private void OnBindProperty(ITypeDescriptorContext context, PropertyDescriptor descriptor, PropertyValueUIItem invokedItem)
 {
     BindUITypeEditor.EditValue(context);
 }
 internal void OnFixPropertyError(ITypeDescriptorContext context, PropertyDescriptor descriptor, PropertyValueUIItem invokedItem)
 {
     this.action.Invoke();
 }
예제 #9
0
 public virtual void InvokeHandler(object source, PropertyDescriptor propertyInfo, PropertyValueUIItem pvUIItem)
 {
 }
        /// <summary>
        /// Extends BeginInvoke so that when a state object is not needed, null does not need to be passed.
        /// <example>
        /// propertyvalueuiiteminvokehandler.BeginInvoke(context, descriptor, invokedItem, callback);
        /// </example>
        /// </summary>
        public static IAsyncResult BeginInvoke(this PropertyValueUIItemInvokeHandler propertyvalueuiiteminvokehandler, System.ComponentModel.ITypeDescriptorContext context, System.ComponentModel.PropertyDescriptor descriptor, PropertyValueUIItem invokedItem, AsyncCallback callback)
        {
            if(propertyvalueuiiteminvokehandler == null) throw new ArgumentNullException("propertyvalueuiiteminvokehandler");

            return propertyvalueuiiteminvokehandler.BeginInvoke(context, descriptor, invokedItem, callback, null);
        }