コード例 #1
0
        public async Task RemoveByAsync(
            int index,
            Action <NavigationConfigBuilder> config = null)
        {
            var navigationConfig = new NavigationConfigBuilder(_navigationConfigProvider.Get(), config).Instance;

            var view = await _stackAlgorithms[navigationConfig.StackType].RemoveAsync(index);

            Clear(view);
        }
コード例 #2
0
        public async Task CloseAsync(
            Action <NavigationConfigBuilder> config)
        {
            var navigationConfig = new NavigationConfigBuilder(_navigationConfigProvider.Get(), config).Instance;

            await ClosePrivateAsync <object>(
                _stackAlgorithms[navigationConfig.StackType],
                null,
                null,
                null,
                navigationConfig.WithAnimation);
        }
コード例 #3
0
        private async Task NavigateToPrivateAsync <TViewModel, TParam, TResult>(
            TParam param,
            Action <TViewModel> viewModelInitialization,
            CallbackParam <TResult> callbackParam,
            Action <NavigationConfigBuilder> config = null)
            where TViewModel : ViewModelBase
        {
            await ExecuteInNavigateSafelyAsync(async() =>
            {
                var navigationConfig = new NavigationConfigBuilder(_navigationConfigProvider.Get(), config).Instance;
                var newView          = CreateView(param, viewModelInitialization, callbackParam);

                await _stackAlgorithms[navigationConfig.StackType].NavigateToAsync(newView, navigationConfig.WithAnimation);
            });
        }