Added Dragablz, cleanup

This commit is contained in:
Holger Boerchers
2016-07-26 21:46:19 +02:00
parent d7919fbe79
commit b200f7975a
11 changed files with 188 additions and 124 deletions

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
</startup>
</configuration>

View File

@ -1,15 +1,23 @@
<Application x:Class="MaterialModernWPF.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:MaterialModernWPF">
xmlns:local="clr-namespace:MaterialModernWPF"
xmlns:dragablz="http://dragablz.net/winfx/xaml/dragablz">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Light.xaml" />
<!-- Material Design -->
<ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Dark.xaml" />
<ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Defaults.xaml" />
<ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Primary/MaterialDesignColor.Indigo.xaml" />
<ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Primary/MaterialDesignColor.Blue.xaml" />
<ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Accent/MaterialDesignColor.Lime.xaml" />
<!-- Dragablz Material Design -->
<ResourceDictionary Source="pack://application:,,,/Dragablz;component/Themes/materialdesign.xaml" />
</ResourceDictionary.MergedDictionaries>
<!-- Dragablz Material Design -->
<Style TargetType="{x:Type dragablz:TabablzControl}" BasedOn="{StaticResource MaterialDesignTabablzControlStyle}" />
</ResourceDictionary>
</Application.Resources>
</Application>

View File

@ -17,7 +17,6 @@ namespace MaterialModernWPF
protected override void InitializeShell()
{
base.InitializeShell();
Application.Current.MainWindow = (Window)Shell;
Application.Current.MainWindow.Show();
}

View File

@ -0,0 +1,31 @@
<UserControl x:Class="MaterialModernWPF.InfoDialog"
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"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:system="clr-namespace:System;assembly=mscorlib"
Width="300"
d:DesignHeight="300"
mc:Ignorable="d">
<StackPanel Margin="16">
<TextBlock Margin="0,0,0,10"
FontSize="16"
Text="NiftyTool NG" />
<TextBlock FontSize="14" TextWrapping="Wrap">
This app is proudly made with: Material Design, ModernWPF 2 and Autofac.
</TextBlock>
<StackPanel HorizontalAlignment="Right" Orientation="Horizontal">
<Button Margin="0,10,0,0"
Command="materialDesign:DialogHost.CloseDialogCommand"
IsDefault="True"
Style="{StaticResource MaterialDesignFlatButton}">
<Button.CommandParameter>
<system:Boolean>True</system:Boolean>
</Button.CommandParameter>
CLOSE
</Button>
</StackPanel>
</StackPanel>
</UserControl>

View File

@ -0,0 +1,15 @@
using System.Windows.Controls;
namespace MaterialModernWPF
{
/// <summary>
/// Interaktionslogik für InfoDialog.xaml
/// </summary>
public partial class InfoDialog : UserControl
{
public InfoDialog()
{
InitializeComponent();
}
}
}

View File

@ -9,14 +9,15 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>MaterialModernWPF</RootNamespace>
<AssemblyName>MaterialModernWPF</AssemblyName>
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<WarningLevel>4</WarningLevel>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<PlatformTarget>x64</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
@ -24,6 +25,7 @@
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
@ -42,6 +44,10 @@
<HintPath>..\packages\Autofac.3.5.2\lib\net40\Autofac.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Dragablz, Version=0.0.3.169, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Dragablz.0.0.3.169\lib\net45\Dragablz.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="MaterialDesignColors, Version=1.1.3.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\MaterialDesignColors.1.1.3\lib\net45\MaterialDesignColors.dll</HintPath>
<Private>True</Private>
@ -95,6 +101,9 @@
<DependentUpon>App.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Compile Include="InfoDialog.xaml.cs">
<DependentUpon>InfoDialog.xaml</DependentUpon>
</Compile>
<Compile Include="Shell.xaml.cs">
<DependentUpon>Shell.xaml</DependentUpon>
<SubType>Code</SubType>
@ -133,6 +142,10 @@
<Resource Include="airballoon.ico" />
</ItemGroup>
<ItemGroup>
<Page Include="InfoDialog.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Shell.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>

View File

@ -3,47 +3,42 @@
// Dieser Code wurde von einem Tool generiert.
// Laufzeitversion:4.0.30319.42000
//
// Änderungen an dieser Datei können fehlerhaftes Verhalten verursachen und gehen verloren, wenn
// der Code neu generiert wird.
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
// der Code erneut generiert wird.
// </auto-generated>
//------------------------------------------------------------------------------
namespace MaterialModernWPF.Properties
{
namespace MaterialModernWPF.Properties {
using System;
/// <summary>
/// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
/// </summary>
// Diese Klasse wurde von der StronglyTypedResourceBuilder-Klasse
// über ein Tool wie ResGen oder Visual Studio automatisch generiert.
// Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
// -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
// Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
// mit der Option /str erneut aus, oder erstellen Sie Ihr VS-Projekt neu.
// mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources
{
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources()
{
internal Resources() {
}
/// <summary>
/// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager
{
get
{
if ((resourceMan == null))
{
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("MaterialModernWPF.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
@ -53,17 +48,14 @@ namespace MaterialModernWPF.Properties
/// <summary>
/// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
/// Ressourcenlookups, die diese stark typisierte Ressourcenklasse verwenden.
/// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture
{
get
{
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set
{
set {
resourceCulture = value;
}
}

View File

@ -1,28 +1,24 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
// Dieser Code wurde von einem Tool generiert.
// Laufzeitversion:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
// der Code erneut generiert wird.
// </auto-generated>
//------------------------------------------------------------------------------
namespace MaterialModernWPF.Properties
{
namespace MaterialModernWPF.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
{
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default
{
get
{
public static Settings Default {
get {
return defaultInstance;
}
}

View File

@ -2,13 +2,14 @@
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:dragablz="http://dragablz.net/winfx/xaml/dragablz"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
xmlns:materialModernWpf="clr-namespace:MaterialModernWPF"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:modern="http://modernwpf"
xmlns:prism="http://prismlibrary.com/"
xmlns:system="clr-namespace:System;assembly=mscorlib"
x:Name="Window"
Title="Material Design In XAML Toolkit"
Title="NiftyTool NG"
Width="920"
Height="600"
modern:UIHooks.AutoDpiScale="True"
@ -31,77 +32,98 @@
ShowTitle="False" />
<materialDesign:DialogHost Grid.Row="1" Identifier="RootDialog">
<materialDesign:DialogHost.DialogContent>
<StackPanel Margin="16">
<TextBlock>Tell me your name:</TextBlock>
<TextBox Margin="0 8 0 0" HorizontalAlignment="Stretch" />
<StackPanel HorizontalAlignment="Right" Orientation="Horizontal">
<Button Margin="0 8 8 0"
Command="materialDesign:DialogHost.CloseDialogCommand"
IsDefault="True"
Style="{StaticResource MaterialDesignFlatButton}">
<Button.CommandParameter>
<system:Boolean>True</system:Boolean>
</Button.CommandParameter>
ACCEPT
</Button>
<Button Margin="0 8 8 0"
Command="materialDesign:DialogHost.CloseDialogCommand"
IsCancel="True"
Style="{StaticResource MaterialDesignFlatButton}">
<Button.CommandParameter>
<system:Boolean>False</system:Boolean>
</Button.CommandParameter>
CANCEL
</Button>
</StackPanel>
</StackPanel>
<materialModernWpf:InfoDialog />
</materialDesign:DialogHost.DialogContent>
<materialDesign:DrawerHost Grid.Row="1" IsLeftDrawerOpen="{Binding ElementName=MenuToggleButton, Path=IsChecked}">
<materialDesign:DrawerHost IsLeftDrawerOpen="{Binding ElementName=MenuToggleButton, Path=IsChecked}">
<materialDesign:DrawerHost.LeftDrawerContent>
<DockPanel MinWidth="212">
<ToggleButton Margin="16"
<ToggleButton Margin="12"
HorizontalAlignment="Right"
DockPanel.Dock="Top"
IsChecked="{Binding ElementName=MenuToggleButton,
Path=IsChecked,
Mode=TwoWay}"
Style="{StaticResource MaterialDesignHamburgerToggleButton}" />
<TreeView>
<TreeViewItem Header="Item1" IsExpanded="True">
<TreeViewItem Header="Item1" />
<TreeViewItem Header="Item2" />
<TreeViewItem Header="Item3" />
</TreeViewItem>
<TreeViewItem Header="Item2" />
<TreeViewItem Header="Item3" />
<TreeViewItem Header="Item4" />
</TreeView>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition />
<RowDefinition Height="Auto" />
<RowDefinition />
</Grid.RowDefinitions>
<TextBlock Grid.Row="0"
Margin="5"
Text="Favorites" />
<ListBox Grid.Row="1">
<TextBlock Text="WIND020214" />
<TextBlock Text="WIND020248" />
<TextBlock Text="SRV-LSIMCTRL01" />
</ListBox>
<TextBlock Grid.Row="2"
Margin="5"
Text="History" />
<ListBox Grid.Row="3">
<TextBlock Text="WIND020214" />
<TextBlock Text="WIND020248" />
<TextBlock Text="SRV-LSIMCTRL01" />
</ListBox>
</Grid>
</DockPanel>
</materialDesign:DrawerHost.LeftDrawerContent>
<DockPanel>
<materialDesign:ColorZone materialDesign:ShadowAssist.ShadowDepth="Depth2"
DockPanel.Dock="Top"
Mode="PrimaryMid"
Padding="16">
Padding="2">
<DockPanel>
<ToggleButton x:Name="MenuToggleButton"
IsChecked="False"
Style="{StaticResource MaterialDesignHamburgerToggleButton}" />
<materialDesign:PopupBox DockPanel.Dock="Right"
PlacementMode="BottomAndAlignRightEdges"
StaysOpen="False">
<StackPanel DockPanel.Dock="Right" Orientation="Horizontal">
<Button materialDesign:ShadowAssist.ShadowDepth="Depth0" Style="{StaticResource MaterialDesignFloatingActionButton}">
<materialDesign:PackIcon Width="32"
Height="32"
Kind="CubeOutline" />
</Button>
<Button materialDesign:ShadowAssist.ShadowDepth="Depth0" Style="{StaticResource MaterialDesignFloatingActionButton}">
<materialDesign:PackIcon Width="32"
Height="32"
Kind="Clippy" />
</Button>
<materialDesign:PopupBox PlacementMode="BottomAndAlignRightEdges" StaysOpen="False">
<StackPanel>
<Button Command="{x:Static materialDesign:DialogHost.OpenDialogCommand}" Content="Einstellungen" />
<Button Command="{x:Static materialDesign:DialogHost.OpenDialogCommand}" Content="Info" />
</StackPanel>
</materialDesign:PopupBox>
<TextBlock HorizontalAlignment="Center"
</StackPanel>
<TextBlock Margin="10,0,0,0"
HorizontalAlignment="Left"
VerticalAlignment="Center"
FontSize="22"
Text="{Binding Title,
ElementName=Window}" />
</DockPanel>
</materialDesign:ColorZone>
<ContentControl prism:RegionManager.RegionName="MainArea" />
<dragablz:TabablzControl>
<dragablz:TabablzControl.InterTabController>
<dragablz:InterTabController />
</dragablz:TabablzControl.InterTabController>
<TabItem Header="Tab No. 1" IsSelected="True">
<TextBlock Margin="12"
FontSize="24"
Foreground="{StaticResource MaterialDesignDarkForeground}">
Hello World
</TextBlock>
</TabItem>
<TabItem Header="Tab No. 2">
<TextBlock Margin="12"
FontSize="24"
Foreground="{StaticResource MaterialDesignDarkForeground}">
We Have Tearable Tabs!
</TextBlock>
</TabItem>
</dragablz:TabablzControl>
</DockPanel>
</materialDesign:DrawerHost>
</materialDesign:DialogHost>

View File

@ -1,17 +1,4 @@
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;
using System.Windows;
namespace MaterialModernWPF
{

View File

@ -2,6 +2,7 @@
<packages>
<package id="Autofac" version="3.5.2" targetFramework="net452" />
<package id="CommonServiceLocator" version="1.3" targetFramework="net452" />
<package id="Dragablz" version="0.0.3.169" targetFramework="net452" />
<package id="MaterialDesignColors" version="1.1.3" targetFramework="net452" />
<package id="MaterialDesignThemes" version="2.0.0.638" targetFramework="net452" />
<package id="ModernWpf.Core" version="2.0.0-alpha94" targetFramework="net452" />