예제 #1
0
        protected virtual object CallDelegate(string id, params InvokeParam[] args)
        {
            _invokeParameters.Clear();

            foreach (var param in args)
            {
                _invokeParameters.Set(param);
            }

            _invokeParameters.Set(new InvokeParam("binding", Binding));
            _invokeParameters.Set(new InvokeParam("sender", this));

            object definition;

            if (_delegates.TryGetValue(id, out definition))
            {
                return(DefinitionResolver.InvokeMethod(Controller, Binding, _delegates[id], _invokeParameters));
            }

            return(null);
        }
예제 #2
0
        public void NavigateTo(string uri, params InvokeParam[] arguments)
        {
            InvokeParameters invokeParameters = new InvokeParameters();

            foreach (var param in arguments)
            {
                invokeParameters.Set(param);
            }

            DefinitionFile def = uri != null?ContentLoader.Current.Load <DefinitionFile>(uri) : null;

            Navigation.NavigateTo(def, invokeParameters);
        }