我已经开发了 ac# WPF 应用程序,我想对我的图表视图进行缩放或滚动条,因为数据正在相互合并,我相信缩放或添加滚动条将是一种解决方案。到目前为止,我有这个。顺便说一句,我正在做一个柱形图。
public partial class ChartControl : UserControl
{
System.Windows.Forms.ScrollableControl ctl = new System.Windows.Forms.ScrollableControl();
public ChartControl()
{
InitializeComponent();
scrollbar();
}
private System.Windows.Forms.ScrollBars scrollbar()
{
if (ctl.HorizontalScroll.Visible)
return ctl.VerticalScroll.Visible ? System.Windows.Forms.ScrollBars.Both : System.Windows.Forms.ScrollBars.Horizontal;
else
return ctl.VerticalScroll.Visible ? System.Windows.Forms.ScrollBars.Vertical : System.Windows.Forms.ScrollBars.Horizontal;
}
private void Grid_MouseWheel(object sender, MouseWheelEventArgs e)
{
if (e.Delta > 0)
{
chartzoom.ScaleX += 1;
chartzoom.ScaleY += 1;
}
else
{
chartzoom.ScaleX -= 1;
chartzoom.ScaleY -= 1;
}
}
}
缩放不是很有效,有没有办法添加滚动条或适当的缩放属性。
Xaml 代码如下::
<Grid MouseWheel="Grid_MouseWheel">
<dvc:Chart Canvas.Top="80" Name="chart" PreviewMouseWheel="Grid_MouseWheel" >
<dvc:Chart.LayoutTransform>
<ScaleTransform x:Name="chartzoom"></ScaleTransform>
</dvc:Chart.LayoutTransform>
<dvc:Chart.Series >
<dvc:ColumnSeries Title="{Binding LineGraphTitledg1}"
ItemsSource="{Binding Data}"
IndependentValueBinding="{Binding Path=Time}"
DependentValueBinding="{Binding Path=DG1}" />
<dvc:ColumnSeries Title="{Binding LineGraphTitledg2 }"
ItemsSource="{Binding Data}"
IndependentValueBinding="{Binding Path=Time}"
DependentValueBinding="{Binding Path=DG2}" />
<dvc:ColumnSeries Title="{Binding LineGraphTitledg3}"
ItemsSource="{Binding Data}"
IndependentValueBinding="{Binding Path=Time}"
DependentValueBinding="{Binding Path=DG3}" />
<dvc:ColumnSeries Title="{Binding LineGraphTitledgunits}"
ItemsSource="{Binding Dataunitvsfuel}"
IndependentValueBinding="{Binding Path=kwh}"
DependentValueBinding="{Binding Path=fuel}"
IsSelectionEnabled="True" />
</dvc:Chart.Series>
</dvc:Chart>