예제 #1
0
        /// <summary>
        /// Builds the command.
        /// </summary>
        /// <param name="propertyExpression">The property expression.</param>
        /// <param name="navigateTo">The navigate to.</param>
        /// <param name="canNavigateTo">The can navigate to.</param>
        /// <returns>A <see cref="Rem.Ria.Infrastructure.Navigation.INavigationCommand"/></returns>
        public INavigationCommand BuildCommand(
            Expression<Func<object>> propertyExpression,
            Action<KeyValuePair<string, string>[]> navigateTo,
            Func<KeyValuePair<string, string>[], bool> canNavigateTo = null )
        {
            var commandName = PropertyUtil.ExtractPropertyName ( propertyExpression );
            var navigationCommand = new NavigationCommand ( navigateTo, canNavigateTo );

            if ( _commandList.ContainsKey ( commandName ) )
            {
                _commandList[commandName] = navigationCommand;
            }
            else
            {
                _commandList.Add ( commandName, navigationCommand );
            }
            return navigationCommand;
        }
예제 #2
0
        /// <summary>
        /// Builds the command.
        /// </summary>
        /// <param name="propertyExpression">The property expression.</param>
        /// <param name="navigateTo">The navigate to.</param>
        /// <param name="canNavigateTo">The can navigate to.</param>
        /// <returns>A <see cref="Rem.Ria.Infrastructure.Navigation.INavigationCommand"/></returns>
        public INavigationCommand BuildCommand(
            Expression <Func <object> > propertyExpression,
            Action <KeyValuePair <string, string>[]> navigateTo,
            Func <KeyValuePair <string, string>[], bool> canNavigateTo = null)
        {
            var commandName       = PropertyUtil.ExtractPropertyName(propertyExpression);
            var navigationCommand = new NavigationCommand(navigateTo, canNavigateTo);

            if (_commandList.ContainsKey(commandName))
            {
                _commandList[commandName] = navigationCommand;
            }
            else
            {
                _commandList.Add(commandName, navigationCommand);
            }
            return(navigationCommand);
        }