Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class RibbonRegionAdapter : RegionAdapterBase<Ribbon>
- {
- private Ribbon _ribbonTarget;
- public RibbonRegionAdapter(IRegionBehaviorFactory regionBehaviorFactory)
- : base(regionBehaviorFactory)
- {
- }
- protected override void Adapt(IRegion region, Ribbon regionTarget)
- {
- _ribbonTarget = regionTarget;
- region.Views.CollectionChanged += delegate {
- foreach (RibbonTab tab in region.Views.Cast<RibbonTab>())
- {
- if (!_ribbonTarget.Items.Contains(tab))
- {
- _ribbonTarget.Items.Add(tab);
- }
- }
- };
- }
- protected override IRegion CreateRegion()
- {
- return new SingleActiveRegion();
- }
- }
- protected override RegionAdapterMappings ConfigureRegionAdapterMappings()
- {
- RegionAdapterMappings mappings = base.ConfigureRegionAdapterMappings();
- if (mappings != null)
- {
- mappings.RegisterMapping(typeof(Ribbon), this.Container.Resolve<RibbonRegionAdapter>());
- }
- return mappings;
- }
- <ribbon:RibbonTab x:Class="CarManager.Modules.CarModule.Views.CarRibbonTab"
- xmlns:ribbon="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
- xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
- mc:Ignorable="d"
- Header="Officers">
- <ribbon:RibbonGroup Header="New">
- </ribbon:RibbonGroup>
- <ribbon:RibbonGroup Header="Manage">
- <ribbon:RibbonButton Label="Make"
- LargeImageSource="..Resourcesmake.png" />
- <ribbon:RibbonButton Label="Inventory"
- LargeImageSource="..ResourcesInventory.png" />
- <ribbon:RibbonButton Label="Assignments" />
- </ribbon:RibbonGroup>
- </ribbon:RibbonTab>
- public partial class CarRibbonTab: RibbonTab
- {
- public CarRibbonTab()
- {
- InitializeComponent();
- }
- }
- <ribbon:Ribbon DockPanel.Dock="Top" Title="CarManager" prism:RegionManager.RegionName="RibbonRegion">
- <ribbon:Ribbon.ApplicationMenu>
- <ribbon:RibbonApplicationMenu SmallImageSource="ImagesIcon.png">
- <ribbon:RibbonApplicationMenuItem Header="Exit"
- ImageSource="ImagesExitIcon.png"/>
- </ribbon:RibbonApplicationMenu>
- </ribbon:Ribbon.ApplicationMenu>
- </ribbon:Ribbon>
- public class CarModule: IModule
- {
- private readonly IRegionManager _regionManager;
- private readonly IUnityContainer _container;
- public MenuItemViewModel MenuItem;
- public CarModule(IUnityContainer container, IRegionManager regionManager)
- {
- _container = container;
- _regionManager = regionManager;
- }
- public void Initialize()
- {
- //Ribbon
- _container.RegisterType<Object, CarRibbonTab>("CarRibbonTab");
- _regionManager.AddToRegion("RibbonRegion", _container.Resolve<CarRibbonTab>());
- }
- }
- var tab1= new Uri("Tab1", UriKind.Relative);
- regionManager.RequestNavigate("RibbonRegion", tab1);
- var tab2= new Uri("Tab2", UriKind.Relative);
- regionManager.RequestNavigate("RibbonRegion", tab2);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement