示例#1
0
        public async void InitSessionComplete(BranchUniversalObject buo, BranchLinkProperties blp)
        {
            // Gets the requested sample and design, then navigates to it.

            this.Log().Debug("Branch initialization completed.");

            var pageName = string.Empty;

            if (blp?.controlParams?.TryGetValue("$deeplink_path", out pageName) ?? false)
            {
                var sample = App.GetSamples().FirstOrDefault(s => s.ViewType.Name.ToLowerInvariant() == pageName.ToLowerInvariant());
                if (sample != null)
                {
                    if (blp.controlParams.TryGetValue("$design", out var designName) && Enum.TryParse <Design>(designName, out var design))
                    {
                        SamplePageLayout.SetPreferredDesign(design);
                    }

                    await _isAppReadyTcs.Task;

                    this.Log().Debug($"Navigating to {sample.ViewType.Name} from deeplink.");

                    (Application.Current as App)?.ShellNavigateTo(sample);

                    this.Log().Info($"Navigated to {sample.ViewType.Name} from deeplink.");
                }
            }
        }
示例#2
0
 public AnimationSamplePage()
 {
     this.InitializeComponent();
     Loaded += (s, e) =>
     {
         _sampleLayoutRoot = SamplePageLayout.GetSampleChild <UserControl>(Design.Fluent, "FluentLayoutRoot");
         if (_sampleLayoutRoot != null)
         {
             VisualStateManager.GoToState(_sampleLayoutRoot, "NotAnimated", false);
         }
     };
 }