Many nice features

This commit is contained in:
Holger Boerchers
2018-08-14 21:51:18 +02:00
parent 01a90bd460
commit 2b295c9d93
24 changed files with 493 additions and 198 deletions

View File

@ -0,0 +1,22 @@
using System;
using Prism.Ioc;
using Prism.Modularity;
using Prism.Regions;
namespace MaterialModernWPF.Module
{
public class MainModule : IModule
{
public void RegisterTypes(IContainerRegistry containerRegistry)
{
containerRegistry.Register<MainViewModel>();
containerRegistry.RegisterForNavigation<MainView>();
}
public void OnInitialized(IContainerProvider containerProvider)
{
var regionManager = containerProvider.Resolve<IRegionManager>();
regionManager.RequestNavigate(Constants.MainRegion, new Uri(nameof(MainView), UriKind.Relative));
}
}
}

View File

@ -0,0 +1,33 @@
<UserControl
x:Class="MaterialModernWPF.Module.MainView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:MaterialModernWPF.Module"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:prism="http://prismlibrary.com/"
xmlns:root="clr-namespace:MaterialModernWPF"
d:DataContext="{d:DesignInstance local:MainViewModel}"
d:DesignHeight="450"
d:DesignWidth="800"
prism:ViewModelLocator.AutoWireViewModel="True"
mc:Ignorable="d">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" MinWidth="150" />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<ListBox
Grid.Column="0"
DisplayMemberPath="Name"
ItemsSource="{Binding Packages}"
SelectionMode="Multiple">
<ListBox.ItemContainerStyle>
<Style BasedOn="{StaticResource {x:Type ListBoxItem}}" TargetType="ListBoxItem">
<Setter Property="IsSelected" Value="{Binding IsSelected}" />
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
<ItemsControl Grid.Column="1" prism:RegionManager.RegionName="{x:Static root:Constants.PackagesRegion}" />
</Grid>
</UserControl>

View File

@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace MaterialModernWPF.Module
{
/// <summary>
/// Interaktionslogik für MainView.xaml
/// </summary>
public partial class MainView : UserControl
{
public MainView()
{
InitializeComponent();
}
}
}

View File

@ -0,0 +1,18 @@
using System.Collections.Generic;
using DryIoc;
using MaterialModernWPF.Service;
namespace MaterialModernWPF.Module
{
public class MainViewModel
{
private readonly CalculationPackageContainer _container;
public MainViewModel(CalculationPackageContainer container)
{
_container = container;
}
public IEnumerable<CalculationPackage> Packages => _container.CalculationPackages;
}
}