当前位置: 代码迷 >> Windows Mobile >> 生手求教——WP实现一个心电图demo
  详细解决方案

生手求教——WP实现一个心电图demo

热度:95   发布时间:2016-04-25 07:08:29.0
新手求教——WP实现一个心电图demo
windows phone 写一个显示心电图的demo 
目前思路是 读取数据后,用path画 再动态加载到一个子Grid上,然后整个grid Transfrom。但发现 path无法再屏幕像素界意外画图(如 line 从0,0-1000,0 的话 只会画出屏幕宽度的长度 在后面没有画出)。这个想法就不行;
有没有其他的思路,相对详细一点 告诉控件或涉及哪些 我可以去看
跪谢大神....
------解决思路----------------------
画图一般用 Canvas 吧, Grid 适合相对长度的布局 。
超出屏幕宽度部分应该不是没有画出,是被 Grid 遮挡住了(Clip 属性)。

如果你是要每画一个点就向左侧收缩宽度那种效果,的确就是画点然后 Transfrom 的思路。
我觉得如果  Transfrom 的参数没错的话,可能是 Grid 的布局方式的问题,把 Grid 换成 Canvas 应该就可以了。

另外贴个以前写的画折线图的代码供你参考。

    ' XAML里画一个 Canvas,命名为 cv
    ' Private cv As Canvas = TryCast(FindName("cv"), Canvas)
    
    Private pa As Path
    Private pg As PathGeometry
    Private pf As PathFigure

    
    ''' <summary>
    ''' 初始化一个 Path,并画第一个点。
    ''' </summary>
    Private Sub InitPath(point As Point)
        pf = New PathFigure
        pf.StartPoint = point

        pg = New PathGeometry
        pg.Figures.Add(pf)

        pa = New Path        
        pa.Stroke = New SolidColorBrush(Color.FromArgb(255, 255, 0, 0))
        pa.StrokeThickness = 2
        pa.Data = pG

        cv.Children.Add(pa)
    End Sub
    
    ''' <summary>
    ''' 向折线上追加一点并连线。
    ''' </summary>
    Private Sub Plot(point As Point)        
        Dim ls As New LineSegment
        ls.Point = point
        pf.Segments.Add(ls)
    End Sub

------解决思路----------------------
不确定心电图各各点之间到底是曲线拟合还是直线连接。如果是直线可以了。
  相关解决方案