0

データが互いにマージされているため、ズームまたはスクロールバーを追加すると解決策になると思います。これまでのところ私はこれを持っています。ところで、私は縦棒グラフをやっています。

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>
4

2 に答える 2

0

Chart コントロールはスクロール自体をサポートしていません。したがって、 a 内にラップするとScrollViewer解決策が得られます。これを機能させるには、グラフを固定サイズまたは最小サイズに設定しました。

<ScrollViewer HorizontalScrollBarVisibility="Visible" VerticalScrollBarVisibility="Visible">
    <dvc:Chart Name="chart" MinWidth="500" MinHeight="300">
        (...)
    </dvc:Chart>
</ScrollViewer>
于 2016-03-09T07:25:21.760 に答える
0

Xaml の ScrollView でグラフをラップすると、スクロールできるようになります。

于 2016-03-09T06:41:29.780 に答える