我不明白如何创建图表控件并将图表放置在现有表单中。我在网上找到的所有示例都以新表单显示图表,但我想将图表添加到我现有的表单之一。
我在想这样的事情:
let form = new Form(Text="My form")
let lbl = new Label(Text="my label")
let chart = Chart.Area ["a", 10; "b", 20]
form.Controls.Add lbl
form.Controls.Add chart
// ---> The type 'ChartTypes.GenericChart' is not compatible with the type 'Control'
Application.Run(form)
Thanks!
为了实现这一点,您应该将图表包装成FSharp.Charting.ChartTypes.ChartControl
并注意正确对接。另外你不应该混合Chart
来自 FSharp.ChartingChart
from System.Windows.Forms.DataVisualization.Charting
.
一个好的起点可能是以下与当前 FSharp.Charting v0.90.5 配合使用的全功能示例;还需要参考文献System.Drawing
and System.Windows.Forms
:
open System
open FSharp.Charting
open FSharp.Charting.ChartTypes
open System.Drawing
open System.Windows.Forms
[<STAThread; EntryPoint>]
let main args =
let myChart = [for x in 0.0 .. 0.1 .. 6.0 -> sin x + cos (2.0 * x)]
|> Chart.Line |> Chart.WithYAxis(Title="Test")
let myChartControl = new ChartControl(myChart, Dock=DockStyle.Fill)
let lbl = new Label(Text="my label")
let form = new Form(Visible = true, TopMost = true, Width = 700, Height = 500)
form.Controls.Add lbl
form.Controls.Add(myChartControl)
do Application.Run(form) |> ignore
0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)