使用 c#/WPF/livecharts。如何设置 SeriesCollection 中单个项目的可见性?
Using c# / WPF / livecharts. How can I set visibility of individual item at SeriesCollection?
我正在为我的图表系列使用 SeriesCollection。
我想做的是当用户 check/uncheck 在系列列表中时切换可见性。
在XAML,ItemsControl代码是这样的
<ItemsControl ItemsSource="{Binding Path=SeriesItemList}"
ItemTemplate="{StaticResource toggleChartItemTemplate}"
>
在项目模板中,checkbox IsChecked事件是这样绑定的。
<CheckBox IsChecked="{Binding Path=IsChecked}" >
</CheckBox>
并且当调用 IsChecked 时,它在 class 文件中被写为
public bool IsChecked
{
get { return _IsChecked; }
set
{
_IsChecked = value;
Console.Write("");
mainViewModel.ToggleSeries(SeriesName, value);
RaisePropertyChanged("IsChecked");
}
}
最后,ToggleSeries 函数调用
public void ToggleSeries(string SeriesName, bool value)
{
for (int idx = 0; idx < MainChartSeries.Count; idx++)
{
if (MainChartSeries[idx].Title == SeriesName)
{
//We will set visibility of the series here.
}
}
Console.Write("");
}
代码没有错误。所以我认为没有问题。
如果我能找出如何设置单个系列可见性的可见性
SeriesCollection 的。
我可以访问的是 IsSeriesVisible 属性。它没有设置方法。
如何设置它的可见性?我应该将 SeriesCollection 更改为其他内容吗?
谢谢。
刚遇到同样的问题并找到了解决方案。
您可以将 SeriesCollection[idx] 转换为您正在使用的系列类型
像这样:
LineSeries seriesToHide = (MainChartSeries[idx] as LineSeries);
seriesToHide.Visibility = Visibility.Collapsed;
您的可见度 属性 和 setter,以及更多其他有用的属性。
我正在为我的图表系列使用 SeriesCollection。
我想做的是当用户 check/uncheck 在系列列表中时切换可见性。
在XAML,ItemsControl代码是这样的
<ItemsControl ItemsSource="{Binding Path=SeriesItemList}"
ItemTemplate="{StaticResource toggleChartItemTemplate}"
>
在项目模板中,checkbox IsChecked事件是这样绑定的。
<CheckBox IsChecked="{Binding Path=IsChecked}" >
</CheckBox>
并且当调用 IsChecked 时,它在 class 文件中被写为
public bool IsChecked
{
get { return _IsChecked; }
set
{
_IsChecked = value;
Console.Write("");
mainViewModel.ToggleSeries(SeriesName, value);
RaisePropertyChanged("IsChecked");
}
}
最后,ToggleSeries 函数调用
public void ToggleSeries(string SeriesName, bool value)
{
for (int idx = 0; idx < MainChartSeries.Count; idx++)
{
if (MainChartSeries[idx].Title == SeriesName)
{
//We will set visibility of the series here.
}
}
Console.Write("");
}
代码没有错误。所以我认为没有问题。 如果我能找出如何设置单个系列可见性的可见性 SeriesCollection 的。
我可以访问的是 IsSeriesVisible 属性。它没有设置方法。
如何设置它的可见性?我应该将 SeriesCollection 更改为其他内容吗?
谢谢。
刚遇到同样的问题并找到了解决方案。
您可以将 SeriesCollection[idx] 转换为您正在使用的系列类型 像这样:
LineSeries seriesToHide = (MainChartSeries[idx] as LineSeries);
seriesToHide.Visibility = Visibility.Collapsed;
您的可见度 属性 和 setter,以及更多其他有用的属性。