Esempio n. 1
0
        public void MenuItemLabelStyleCustom()
        {
            var classStyle = new Style(typeof(Label))
            {
                Setters =
                {
                    new Setter {
                        Property = Label.VerticalTextAlignmentProperty, Value = TextAlignment.Start
                    }
                },
                Class = "fooClass",
            };

            Shell shell = new Shell();

            shell.Resources = new ResourceDictionary {
                classStyle
            };
            var shellItem     = CreateShellItem();
            var menuItem      = new MenuItem();
            var shellMenuItem = new MenuShellItem(menuItem);

            menuItem.StyleClass = new[] { "fooClass" };
            shell.Items.Add(shellItem);
            shell.Items.Add(shellMenuItem);

            var label = GetFlyoutItemDataTemplateElement <Label>(shell, shellMenuItem);

            Assert.AreEqual(TextAlignment.Start, label.VerticalTextAlignment);
        }
Esempio n. 2
0
        public void FlyoutItemDefaultTemplates()
        {
            Shell            shell = new Shell();
            IShellController sc    = (IShellController)shell;

            shell.MenuItemTemplate = new DataTemplate(() => new Label()
            {
                Text = "MenuItemTemplate"
            });
            shell.ItemTemplate = new DataTemplate(() => new Label()
            {
                Text = "ItemTemplate"
            });

            var shellItem = CreateShellItem();
            var menuItem  = new MenuShellItem(new MenuItem());

            shell.Items.Add(shellItem);
            shell.Items.Add(menuItem);


            DataTemplate triggerDefault = shell.ItemTemplate;

            triggerDefault = shell.MenuItemTemplate;

            Assert.AreEqual("ItemTemplate", GetFlyoutItemDataTemplateElement <Label>(shell, shellItem).Text);
            Assert.AreEqual("MenuItemTemplate", GetFlyoutItemDataTemplateElement <Label>(shell, menuItem).Text);
            Assert.AreEqual("MenuItemTemplate", GetFlyoutItemDataTemplateElement <Label>(shell, menuItem.MenuItem).Text);
        }
Esempio n. 3
0
        public void MenuItemLabelStyleCustom()
        {
            var classStyle = new Style(typeof(Label))
            {
                Setters =
                {
                    new Setter {
                        Property = Label.VerticalTextAlignmentProperty, Value = TextAlignment.Start
                    }
                },
                Class = "fooClass",
            };

            Shell shell = new Shell();

            shell.Resources = new ResourceDictionary {
                classStyle
            };
            var shellItem     = CreateShellItem();
            var menuItem      = new MenuItem();
            var shellMenuItem = new MenuShellItem(menuItem);

            menuItem.StyleClass = new[] { "fooClass" };
            shell.Items.Add(shellItem);
            shell.Items.Add(shellMenuItem);

            var flyoutItemTemplate = Shell.GetItemTemplate(shellMenuItem);
            var thing = (Element)flyoutItemTemplate.CreateContent();

            thing.Parent = shell;

            var label = thing.LogicalChildren.OfType <Label>().First();

            Assert.AreEqual(TextAlignment.Start, label.VerticalTextAlignment);
        }
Esempio n. 4
0
        public void FlyoutItemVisibleWorksForMenuItemsAddedAsShellItem()
        {
            var shell = new TestShell();
            var item  = new MenuShellItem(CreateNonVisibleMenuItem());

            shell.Items.Add(item);

            var itemsAreEquals = item.Equals(shell.Items[0]);

            Assert.IsTrue(itemsAreEquals);

            IShellController shellController = (IShellController)shell;
            var groups = shellController.GenerateFlyoutGrouping();

            var r = groups.SelectMany(x => x.OfType <IMenuItemController>());

            Assert.AreEqual(r.Count(), 0);
        }