internal void UpdateCommandInfo (CommandInfo info)
		{
			if (defaultHandler == null) {
				if (DefaultHandlerType == null) {
					info.Enabled = false;
					if (!DisabledVisible)
						info.Visible = false;
					return;
				}
				defaultHandler = (CommandHandler) Activator.CreateInstance (DefaultHandlerType);
			}
			if (commandArray) {
				info.ArrayInfo = new CommandArrayInfo (info);
				defaultHandler.InternalUpdate (info.ArrayInfo);
			}
			else
				defaultHandler.InternalUpdate (info);
		}
		public virtual bool DispatchCommand (object dataItem)
		{
			if (defaultHandler == null) {
				if (DefaultHandlerType == null)
					return false;
				defaultHandler = (CommandHandler) Activator.CreateInstance (DefaultHandlerType);
			}			
			defaultHandler.InternalRun (dataItem);
			return true;
		}