-
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update to include Net 9.0 and a Demo Wpf App
Add ViewModel Navigation Control Update Themes
- Loading branch information
1 parent
19069db
commit f25da28
Showing
189 changed files
with
2,953 additions
and
85 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
<Application | ||
x:Class="CrissCross.WPF.UI.Gallery.App" | ||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" | ||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" | ||
xmlns:local="clr-namespace:CrissCross.WPF.UI.Gallery" | ||
xmlns:ui="https://github.com/reactivemarbles/CrissCross.ui" | ||
StartupUri="MainWindow.xaml"> | ||
<Application.Resources> | ||
<ResourceDictionary> | ||
<ResourceDictionary.MergedDictionaries> | ||
<ui:ControlsDictionary /> | ||
<ui:ThemesDictionary Theme="Light" /> | ||
</ResourceDictionary.MergedDictionaries> | ||
</ResourceDictionary> | ||
</Application.Resources> | ||
</Application> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
// Copyright (c) 2019-2024 ReactiveUI Association Incorporated. All rights reserved. | ||
// ReactiveUI Association Incorporated licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for full license information. | ||
|
||
namespace CrissCross.WPF.UI.Gallery; | ||
|
||
/// <summary> | ||
/// Interaction logic for App.xaml. | ||
/// </summary> | ||
public partial class App; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
// Copyright (c) 2019-2024 ReactiveUI Association Incorporated. All rights reserved. | ||
// ReactiveUI Association Incorporated licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for full license information. | ||
|
||
using System.Windows; | ||
|
||
[assembly: ThemeInfo( | ||
ResourceDictionaryLocation.None, | ||
ResourceDictionaryLocation.SourceAssembly)] |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+6.35 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/AnimatedVisualPlayer.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+4.96 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/AnimationInterop.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+4.43 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/AnnotatedScrollBar.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+4.27 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/AppBarSeparator.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+5.71 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/AppBarToggleButton.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+4.84 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/AutoSuggestBox.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+5 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/AutomationProperties.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+5.97 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/CalendarDatePicker.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+4.73 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/CaptureElement.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+4.63 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/ColorPaletteResources.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+5.53 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/CommandBarFlyout.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+4.77 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/ConnectedAnimation.png
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+4.54 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/CreateMultipleWindows.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+4.31 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/DropDownButton.png
Oops, something went wrong.
Binary file added
BIN
+5.16 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/EasingFunction.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+4.79 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/HyperlinkButton.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+2.99 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/ImplicitTransition.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+5.1 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/InputValidation.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+3.79 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/MediaPlayerElement.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+4.45 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/PageTransition.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+8.57 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/RadialGradientBrush.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+5.65 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/StandardUICommand.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+3.3 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/ThemeTransition.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+4.19 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/ToggleSplitButton.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Binary file added
BIN
+4.3 KB
src/CrissCross.WPF.UI.Gallery/Assets/ControlImages/VariableSizedWrapGrid.png
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
35 changes: 35 additions & 0 deletions
35
src/CrissCross.WPF.UI.Gallery/CrissCross.WPF.UI.Gallery.csproj
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
<Project Sdk="Microsoft.NET.Sdk"> | ||
|
||
<PropertyGroup> | ||
<OutputType>WinExe</OutputType> | ||
<TargetFramework>net9.0-windows10.0.17763.0</TargetFramework> | ||
<Nullable>enable</Nullable> | ||
<ImplicitUsings>enable</ImplicitUsings> | ||
<UseWPF>true</UseWPF> | ||
<IsPackable>false</IsPackable> | ||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks> | ||
</PropertyGroup> | ||
|
||
<ItemGroup> | ||
<ProjectReference Include="..\CrissCross.WPF.UI\CrissCross.WPF.UI.csproj" /> | ||
<PackageReference Include="ReactiveMarbles.ObservableEvents.SourceGenerator" Version="1.3.1"> | ||
<PrivateAssets>all</PrivateAssets> | ||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> | ||
</PackageReference> | ||
<PackageReference Include="ReactiveUI.SourceGenerators" Version="2.0.17" PrivateAssets="all" /> | ||
<PackageReference Include="CompiledBindings.WPF" Version="1.0.18" /> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<Folder Include="Models\" /> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<Resource Include="Assets\**\*.png" /> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<Resource Include="Assets\working.gif" /> | ||
</ItemGroup> | ||
|
||
</Project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
<ui:FluentNavigationWindow | ||
x:Class="CrissCross.WPF.UI.Gallery.MainWindow" | ||
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:CrissCross.WPF.UI.Gallery.ViewModels" | ||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" | ||
xmlns:ui="https://github.com/reactivemarbles/CrissCross.ui" | ||
x:Name="mainWindow" | ||
Title="MainWindow" | ||
Width="800" | ||
Height="450" | ||
d:DataContext="{d:DesignInstance Type=local:MainWindowViewModel}" | ||
x:TypeArguments="local:MainWindowViewModel" | ||
mc:Ignorable="d"> | ||
<ui:FluentNavigationWindow.LeftContent> | ||
<StackPanel> | ||
<ui:TextBox Margin="3,0,0,0" Text="{Binding Filter, ElementName=NavigationLeft, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"> | ||
<ui:TextBox.Icon> | ||
<ui:SymbolIcon Symbol="Search20" /> | ||
</ui:TextBox.Icon> | ||
</ui:TextBox> | ||
<ui:NavigationVMLeft x:Name="NavigationLeft" /> | ||
</StackPanel> | ||
</ui:FluentNavigationWindow.LeftContent> | ||
<Grid /> | ||
</ui:FluentNavigationWindow> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
// Copyright (c) 2019-2024 ReactiveUI Association Incorporated. All rights reserved. | ||
// ReactiveUI Association Incorporated licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for full license information. | ||
|
||
using System.Reactive.Disposables; | ||
using System.Windows; | ||
using CrissCross.WPF.UI.Appearance; | ||
using CrissCross.WPF.UI.Gallery.ViewModels; | ||
using ReactiveUI; | ||
using Splat; | ||
|
||
namespace CrissCross.WPF.UI.Gallery; | ||
|
||
/// <summary> | ||
/// Interaction logic for MainWindow.xaml. | ||
/// </summary> | ||
public partial class MainWindow : IAmBuilt | ||
{ | ||
/// <summary> | ||
/// The tracker property. | ||
/// </summary> | ||
public static readonly DependencyProperty TrackerProperty = DependencyProperty.Register( | ||
nameof(Tracker), | ||
typeof(Tracker), | ||
typeof(MainWindow), | ||
new PropertyMetadata(null)); | ||
|
||
/// <summary> | ||
/// Initializes a new instance of the <see cref="MainWindow"/> class. | ||
/// </summary> | ||
public MainWindow() | ||
{ | ||
// Watch for system theme changes | ||
SystemThemeWatcher.Watch(this); | ||
InitializeComponent(); | ||
|
||
// Set the data context | ||
DataContext = ViewModel = new(); | ||
this.WhenActivated(d => | ||
{ | ||
// Set the tracker | ||
var tracker = Locator.Current.GetService<Tracker>(); | ||
tracker?.Track(this); | ||
SetCurrentValue(TrackerProperty, tracker); | ||
// Bind the view model | ||
this.OneWayBind(ViewModel, vm => vm.ApplicationTitle, v => v.Title).DisposeWith(d); | ||
this.OneWayBind(ViewModel, vm => vm.NavigationModels, v => v.NavigationLeft.ItemsSource).DisposeWith(d); | ||
// Navigate to the main view | ||
this.NavigateToView<MainViewModel>(); | ||
}); | ||
|
||
// Dispose the view model on close | ||
Closing += (s, e) => ViewModel.Dispose(); | ||
} | ||
} |
86 changes: 86 additions & 0 deletions
86
src/CrissCross.WPF.UI.Gallery/ViewModels/AllControlsViewModel.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
// Copyright (c) 2019-2024 ReactiveUI Association Incorporated. All rights reserved. | ||
// ReactiveUI Association Incorporated licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for full license information. | ||
|
||
using ReactiveUI.SourceGenerators; | ||
|
||
namespace CrissCross.WPF.UI.Gallery.ViewModels; | ||
|
||
/// <summary> | ||
/// AllControlsViewModel. | ||
/// </summary> | ||
/// <seealso cref="CrissCross.RxObject" /> | ||
public partial class AllControlsViewModel : RxObject | ||
{ | ||
[ReactiveCommand] | ||
private void Buttons() | ||
{ | ||
this.NavigateToView<ButtonsViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void CheckBox() | ||
{ | ||
this.NavigateToView<CheckBoxViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void ComboBox() | ||
{ | ||
this.NavigateToView<ComboBoxViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void DatePicker() | ||
{ | ||
this.NavigateToView<DatePickerViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void Image() | ||
{ | ||
this.NavigateToView<ImageViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void NumericPushButton() | ||
{ | ||
this.NavigateToView<NumericPushButtonViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void PasswordBox() | ||
{ | ||
this.NavigateToView<PasswordBoxViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void RadioButton() | ||
{ | ||
this.NavigateToView<RadioButtonViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void Slider() | ||
{ | ||
this.NavigateToView<SliderViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void TextBlock() | ||
{ | ||
this.NavigateToView<TextBlockViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void TextBox() | ||
{ | ||
this.NavigateToView<TextBoxViewModel>("mainWindow"); | ||
} | ||
|
||
[ReactiveCommand] | ||
private void ToggleButton() | ||
{ | ||
this.NavigateToView<ToggleButtonViewModel>("mainWindow"); | ||
} | ||
} |
13 changes: 13 additions & 0 deletions
13
src/CrissCross.WPF.UI.Gallery/ViewModels/BasicControls/ButtonsViewModel.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
// Copyright (c) 2019-2024 ReactiveUI Association Incorporated. All rights reserved. | ||
// ReactiveUI Association Incorporated licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for full license information. | ||
|
||
namespace CrissCross.WPF.UI.Gallery.ViewModels; | ||
|
||
/// <summary> | ||
/// ButtonsViewModel. | ||
/// </summary> | ||
/// <seealso cref="CrissCross.RxObject" /> | ||
public partial class ButtonsViewModel : RxObject | ||
{ | ||
} |
Oops, something went wrong.