项目结构调整

This commit is contained in:
艾竹
2023-04-16 20:11:40 +08:00
parent cbfbf96033
commit 81f91f3f35
2124 changed files with 218 additions and 5516 deletions

View File

@@ -0,0 +1,44 @@
<UserControl x:Class="Wpf.CartesianChart.DynamicVisibility.DynamicVisibilityExample"
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"
xmlns:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf"
xmlns:dynamicVisibility="clr-namespace:Wpf.CartesianChart.DynamicVisibility"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300" d:DataContext="{d:DesignInstance dynamicVisibility:DynamicVisibilityExample}">
<UserControl.Resources>
<BooleanToVisibilityConverter x:Key="bvc"></BooleanToVisibilityConverter>
</UserControl.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="*"></RowDefinition>
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal">
<CheckBox IsChecked="{Binding MariaSeriesVisibility}">
Maria Series
</CheckBox>
<CheckBox IsChecked="{Binding CharlesSeriesVisibility}">
Charles Series
</CheckBox>
<CheckBox IsChecked="{Binding JohnSeriesVisibility}">
John Series
</CheckBox>
</StackPanel>
<lvc:CartesianChart Grid.Row="1" Hoverable="False">
<lvc:CartesianChart.Series>
<lvc:ColumnSeries Title="Maria" Values="4,7,2,9,3" Visibility="{Binding MariaSeriesVisibility, Converter={StaticResource bvc}}" MaxWidth="1000" ColumnPadding="0"/>
<lvc:ColumnSeries Title="Charles" Values="6,2,6,3,8" Visibility="{Binding CharlesSeriesVisibility, Converter={StaticResource bvc}}" MaxWidth="1000" ColumnPadding="0"/>
<lvc:ColumnSeries Title="John" Values="7,2,8,3,9" Visibility="{Binding JohnSeriesVisibility, Converter={StaticResource bvc}}" MaxWidth="1000" ColumnPadding="0"/>
</lvc:CartesianChart.Series>
<lvc:CartesianChart.AxisX>
<lvc:Axis Labels="January, February, March, April, May">
<lvc:Axis.Separator>
<lvc:Separator Step="1"></lvc:Separator>
</lvc:Axis.Separator>
</lvc:Axis>
</lvc:CartesianChart.AxisX>
</lvc:CartesianChart>
</Grid>
</UserControl>

View File

@@ -0,0 +1,61 @@
using System.ComponentModel;
using System.Windows.Controls;
namespace Wpf.CartesianChart.DynamicVisibility
{
public partial class DynamicVisibilityExample : UserControl, INotifyPropertyChanged
{
private bool _mariaSeriesVisibility;
private bool _charlesSeriesVisibility;
private bool _johnSeriesVisibility;
public DynamicVisibilityExample()
{
InitializeComponent();
MariaSeriesVisibility = true;
CharlesSeriesVisibility = true;
JohnSeriesVisibility = false;
DataContext = this;
}
public bool MariaSeriesVisibility
{
get { return _mariaSeriesVisibility; }
set
{
_mariaSeriesVisibility = value;
OnPropertyChanged("MariaSeriesVisibility");
}
}
public bool CharlesSeriesVisibility
{
get { return _charlesSeriesVisibility; }
set
{
_charlesSeriesVisibility = value;
OnPropertyChanged("CharlesSeriesVisibility");
}
}
public bool JohnSeriesVisibility
{
get { return _johnSeriesVisibility; }
set
{
_johnSeriesVisibility = value;
OnPropertyChanged("JohnSeriesVisibility");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName = null)
{
if (PropertyChanged != null)
PropertyChanged.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
}