0
我想要获取在UserControl中显示的图表。在Window中执行时,它工作正常。在WPF项目中的UserControl中使用winformchart
的XAML代码:
<WindowsFormsHost x:Name="host" Height="300" Width="300">
<winformchart:Chart x:Name="MyWinformChart">
<winformchart:Chart.Series>
<winformchart:Series Name="series" ChartType="Line"/>
</winformchart:Chart.Series>
<winformchart:Chart.ChartAreas>
<winformchart:ChartArea/>
</winformchart:Chart.ChartAreas>
</winformchart:Chart>
</WindowsFormsHost>
而后面的代码:
using System.Collections.Generic;
using System.Windows.Controls;
using System.Windows.Forms.DataVisualization.Charting;
namespace DragonLink.View {
public partial class TXSpectrumAnalyzer : UserControl {
Dictionary<int, double> value;
public TXSpectrumAnalyzer() {
InitializeComponent();
value = new Dictionary<int, double>();
for (int i = 0; i < 10; i++)
value.Add(i, 10 * i);
Chart chart = this.FindName("MyWinformChart") as Chart;
chart.ChartAreas.Add("Default");
chart.DataSource = value;
chart.Series["series"].XValueMember = "Key";
chart.Series["series"].YValueMembers = "Value";
}
}
}
在它工作得很好,一个窗口使用此代码。 有人可以告诉我为什么这不会在UserControl中工作,或者以其他方式显示winForm图表吗?
谢谢先进。