Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
调用在wpf中使用c#代码创建的visiblox图表_C#_Wpf_Charts - Fatal编程技术网

调用在wpf中使用c#代码创建的visiblox图表

调用在wpf中使用c#代码创建的visiblox图表,c#,wpf,charts,C#,Wpf,Charts,有没有办法调用在WPF中使用C#code创建的Visiblox图表 假设我创建了一个图表,如: private Chart CreateNewChart(int num_chart, string chartName) { Chart newChart = new Chart(); newChart.Name = "Chart_"+num_chart; newChart.Title = chartName; newChart.Width = 600; ne

有没有办法调用在WPF中使用C#code创建的Visiblox
图表

假设我创建了一个图表,如:

private Chart CreateNewChart(int num_chart, string chartName)
{
    Chart newChart = new Chart();
    newChart.Name = "Chart_"+num_chart;
    newChart.Title = chartName;
    newChart.Width = 600;
    newChart.Height = 120;
    newChart.Background = Brushes.Transparent;
    newChart.HorizontalAlignment = HorizontalAlignment.Left;
    newChart.VerticalAlignment = VerticalAlignment.Top;
    newChart.Margin = new Thickness(0, (num_chart * 110), 0, 0);
    BehaviourManager behaviour = new BehaviourManager();
    behaviour.AllowMultipleEnabled = true;
    TrackballBehaviour track = new TrackballBehaviour();
    ZoomBehaviour zoom = new ZoomBehaviour();
    behaviour.Behaviours.Add(track);
    behaviour.Behaviours.Add(zoom);
    newChart.Behaviour = behaviour;
    return newChart;
}
当我从CSV文件导入一些数据时,我想从另一个CSV文件添加更多数据。有没有一种方法可以用每个名称来调用这个创建的
图表


提前感谢。

如果我正确理解了您的要求,您就不会通过
图表
对象的
名称
属性来引用该对象-这实际上只有在您将其添加到UI上时才是如此。相反,您可以将对象存储在某个位置(全局变量、
Chart
对象集合等),然后直接从该存储调用对象

<Window x:Class="ThingNamespace.MainWindow"
     xmlns:ctest="clr-namespace:ThingNamespace"
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
     xmlns:charts="clr-namespace:Visiblox.Charts;assembly=Visiblox.Charts"
     Title="MainWindow" Height="400" Width="600" x:Name="TheWindow">

     <charts:Chart x:Name="myChart" />
</window>
“myChart”的作用域将限定在您的MainWindow类中,因此您可以创建设置图表所需的任何帮助器方法


然而,在代码隐藏中完成所有事情并不是WPF方式,WPF方式将是在XAML中设置大部分或全部代码。您可以在他们的网站上看到如何通过XAML控制图表的示例

不,我的意思是:用代码从csv文件的数据创建一个图表,并将其放入网格中。然后用一个按钮解析另一个csv文件中的一些数据,并将它们动态导入上一个图表。。。如果它是在xaml中,那么使用绑定之类的东西就很容易了,但是现在它都是用c代码从头开始创建的……我的练习是创建一个程序,每次我按下一个按钮,我都会动态创建一个visiblox聊天,在命名导入上有两个按钮,一个命名更多。。。我我现在可以用c#动态生成任意数量的折线图,并用它们的按钮将它们放入网格中。。当我按下“导入”按钮时,一切正常,但当我想从另一个文件在图表中添加更多行时,我想知道如何使用与te chart同名的特定按钮调用以再次实例化图表并添加更多行。。。谢谢
public MainWindow()
{
    InitializeComponent();
    myChart.Title = chartTitle;
    myChart.Width = 600;
    myChart.Height = 120;
    ...
}