Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Directory.packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
<PackageVersion Include="Microsoft.Composition" Version="1.0.31" />
<PackageVersion Include="Microsoft.CSharp" Version="4.7.0" />
<PackageVersion Include="Microsoft.NETCore.Platforms" Version="7.0.0" />
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.4.1" />
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.5.0" />
<PackageVersion Include="Microsoft.Toolkit.MVVM" Version="7.1.2" />
<PackageVersion Include="Microsoft.Xaml.Behaviors.Wpf" Version="1.1.39" />
<PackageVersion Include="Newtonsoft.Json" Version="13.0.2" />
Expand All @@ -22,7 +22,7 @@
<PackageVersion Include="ShowMeTheXAML.AvalonEdit" Version="2.0.0" />
<PackageVersion Include="ShowMeTheXAML.MSBuild" Version="2.0.0" />
<PackageVersion Include="VirtualizingWrapPanel" Version="1.5.7" />
<PackageVersion Include="XAMLTest" Version="1.0.0-ci390" />
<PackageVersion Include="XAMLTest" Version="1.0.0-ci393" />
<PackageVersion Include="xunit" Version="2.4.2" />
<PackageVersion Include="xunit.runner.visualstudio" Version="2.4.5" />
<PackageVersion Include="Xunit.StaFact" Version="1.1.11" />
Expand Down
87 changes: 87 additions & 0 deletions MaterialDesignThemes.UITests/AllStyles.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
using System.Reflection;
using MaterialDesignColors;

namespace MaterialDesignThemes.UITests;

public class AllStyles : TestBase
{
public AllStyles(ITestOutputHelper output)
: base(output)
{ }

[Theory]
[InlineData("Button", "MaterialDesignRaisedButton")]
[InlineData("Calendar", "MaterialDesignCalendarPortrait")]
[InlineData("CheckBox", "MaterialDesignCheckBox")]
[InlineData("ComboBox", "MaterialDesignComboBox")]
[InlineData("DataGrid", "MaterialDesignDataGrid")]
[InlineData("DatePicker", "MaterialDesignDatePicker")]
[InlineData("Expander", "MaterialDesignExpander")]
[InlineData("GridSplitter", "MaterialDesignGridSplitter")]
[InlineData("GroupBox", "MaterialDesignGroupBox")]
[InlineData("Label", "MaterialDesignLabel")]
[InlineData("ListBox", "MaterialDesignListBox")]
[InlineData("ListView", "MaterialDesignListView")]
[InlineData("Menu", "MaterialDesignMenu")]
[InlineData("PasswordBox", "MaterialDesignPasswordBox")]
[InlineData("ProgressBar", "MaterialDesignLinearProgressBar")]
[InlineData("RadioButton", "MaterialDesignRadioButton")]
[InlineData("RichTextBox", "MaterialDesignRichTextBox")]
[InlineData("ScrollBar", "MaterialDesignScrollBar")]
[InlineData("ScrollViewer", "MaterialDesignScrollViewer")]
[InlineData("Slider", "MaterialDesignSlider")]
[InlineData("TabControl", "MaterialDesignTabControl")]
[InlineData("TextBox", "MaterialDesignTextBox")]
[InlineData("ToggleButton", "MaterialDesignSwitchToggleButton")]
[InlineData("ToolBar", "MaterialDesignToolBar")]
[InlineData("TreeView", "MaterialDesignTreeView")]
public async Task LoadStyleInIsolation_CanBeLoaded(string controlName, string styleName)
{
await using var recorder = new TestRecorder(App);

string applicationResourceXaml = $$"""
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes">
<ResourceDictionary.MergedDictionaries>
<materialDesign:BundledTheme BaseTheme="{{BaseTheme.Inherit}}" PrimaryColor="{{PrimaryColor.Purple}}" SecondaryColor="{{SecondaryColor.Blue}}" />

<ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.{{controlName}}.xaml" />
</ResourceDictionary.MergedDictionaries>

<Style TargetType="{x:Type {{controlName}}}" BasedOn="{StaticResource {{styleName}}}" />
</ResourceDictionary>
""";

await App.Initialize(applicationResourceXaml,
Path.GetFullPath("MaterialDesignColors.dll"),
Path.GetFullPath("MaterialDesignThemes.Wpf.dll"),
Assembly.GetExecutingAssembly().Location);

IWindow window = await App.CreateWindow($$"""
<Window
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:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
mc:Ignorable="d"
Height="800" Width="1100"
TextElement.Foreground="{DynamicResource MaterialDesignBody}"
TextElement.FontWeight="Regular"
TextElement.FontSize="13"
TextOptions.TextFormattingMode="Ideal"
TextOptions.TextRenderingMode="Auto"
Background="{DynamicResource MaterialDesignPaper}"
FontFamily="{materialDesign:MaterialDesignFont}"
Title="Test Window"
Topmost="True"
WindowStartupLocation="CenterScreen">
<{{controlName}} />
</Window>
""");

Assert.True(await window.GetIsVisible());
}
}
2 changes: 1 addition & 1 deletion MaterialDesignThemes.UITests/TestBase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ public async Task InitializeAsync() =>
App = await XamlTest.App.StartRemote(new AppOptions
{
AllowVisualStudioDebuggerAttach = true,
LogMessage = message => Output.WriteLine(message)
LogMessage = Output.WriteLine
});
public async Task DisposeAsync() => await App.DisposeAsync();
}
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,8 @@
</Style>

<ControlTemplate x:Key="PopupContentClassicTemplate" TargetType="ContentControl">
<Grid MinWidth="{Binding Path=ContentMinWidth, RelativeSource={RelativeSource AncestorType=wpf:ComboBoxPopup}}" Margin="{Binding Path=ContentMargin, RelativeSource={RelativeSource AncestorType=wpf:ComboBoxPopup}}">
<Grid MinWidth="{Binding Path=ContentMinWidth, RelativeSource={RelativeSource AncestorType=wpf:ComboBoxPopup}}"
Margin="{Binding Path=ContentMargin, RelativeSource={RelativeSource AncestorType=wpf:ComboBoxPopup}}">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
</Grid.RowDefinitions>
Expand Down Expand Up @@ -412,7 +413,6 @@
wpf:ColorZoneAssist.Mode="{Binding Path=(wpf:ColorZoneAssist.Mode), RelativeSource={RelativeSource TemplatedParent}}"
AllowsTransparency="True"
ClassicContentTemplate="{StaticResource PopupContentClassicTemplate}"
ClassicMode="True"
ContentMargin="6,0,6,6"
ContentMinWidth="{Binding Path=ActualWidth, ElementName=templateRoot}"
DefaultVerticalOffset="-1"
Expand All @@ -437,7 +437,7 @@
</MultiBinding>
</wpf:ComboBoxPopup.Background>
<wpf:ComboBoxPopup.Style>
<Style TargetType="wpf:ComboBoxPopup" BasedOn="{StaticResource {x:Type wpf:ComboBoxPopup}}">
<Style TargetType="wpf:ComboBoxPopup">
<Setter Property="CornerRadius" Value="0,0,4,4" />
<Style.Triggers>
<Trigger Property="OpenDirection" Value="Up">
Expand Down