【问题标题】:How can I select a specific point in a LineSeries如何选择 LineSeries 中的特定点
【发布时间】:2012-05-18 14:41:12
【问题描述】:

我目前正在尝试使用 wpf 应用程序中的工具包在 lineSeries 中选择一个点。我只是想用鼠标事件来选择它,但我已经用了好几个小时了,到目前为止还没有成功。

这是我的 xaml 的摘录

<Grid Name="amplitude_envelope" Grid.ColumnSpan="9" Grid.Column="2" Grid.Row="6" Margin="0,0,95,0">
            <chartingToolkit:Chart Title="Amplitude Envelope" Name="chart1"  AllowDrop="True" >

                <chartingToolkit:Chart.Series>

                    <chartingToolkit:LineSeries 
                        Name="my_line"
                        MouseDown="StartDrag"
                        MouseLeave="StopDrag"
                        MouseMove="DragObject"
                        IsSelectionEnabled="True"
                        Title="Envelope"
                        DependentValuePath="Power" IndependentValuePath="Speed" >
                        <chartingToolkit:LineSeries.DependentRangeAxis>
                            <chartingToolkit:LinearAxis
                                    Orientation="Y"
                                    Title="Amplitude (%)"
                                    Minimum="0"
                                    Maximum="1.2"
                                    Interval="0.2"
                                    ShowGridLines="True"/>
                        </chartingToolkit:LineSeries.DependentRangeAxis>
                    </chartingToolkit:LineSeries>
                </chartingToolkit:Chart.Series>

            </chartingToolkit:Chart>
        </Grid>

我的 DragObject 方法如下所示:

private void DragObject(object sender, MouseEventArgs e)
    {
        if (my_line.IsMouseCaptured)
        {
            LineSeries line = (LineSeries)sender;
            var dp = line.SelectedItem;
        }
    }

我只是不知道我应该做什么才能在直接单击某个点时调用我的 StartDrag 事件(到目前为止,我可以在单击线条或图表时做到这一点......但这不是我做的米找)

你对我有什么想法吗?

【问题讨论】:

    标签: c# wpf xaml toolkit lineseries


    【解决方案1】:

    您可以在 LineSeries.DataPointStyle 中定义您的事件:

    <chartingToolkit:LineSeries.DataPointStyle>
        <Style>
            <EventSetter Event="Control.MouseDown" Handler="StartDrag"/>          
        </Style>
    </chartingToolkit:LineSeries.DataPointStyle>
    

    另外,请记住将 IsSelectionEnabled 设置为 False。

    参考:Adding events on WPF LineSeries DataPoint

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-21
      • 2020-04-01
      • 2023-03-18
      相关资源
      最近更新 更多