//写文件–SaveFileDialog
private void Write()
{
string file;
System.Windows.Forms.SaveFileDialog sfd = new System.Windows.Forms.SaveFileDialog();
sfd.Filter = "All files(*.*)|*.xml|All files(*.*)|*.*";
sfd.FilterIndex = 1;
sfd.Title = "另存为";
sfd.RestoreDirectory = true;
if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
//注意:下面这一句不要往上写,会报错,原因打开的话,需要手动关闭
// if ((mystream = sfd.OpenFile()) != null)
file = System.IO.Path.GetFullPath(sfd.FileName);
XmlDocument doc = new XmlDocument();
doc.AppendChild(doc.CreateXmlDeclaration("1.0", "UTF-8", null));
//创建最大的子节点
XmlElement OneNode = doc.CreateElement("ChartData");
//下面这一句也挺重要
doc.AppendChild(OneNode);
//得到所有的子控件
UIElementCollection chartList = ChartGrid.Children;
foreach (UIElement chart in chartList)
{
Type type = chart.GetType();
if (type.ToString() == "BlueStarCharts.LineChart2D")
{
LineChart2D L2D = chart as LineChart2D;
XmlElement TwoNode = doc.CreateElement("Data");
TwoNode.SetAttribute("Type", "2d");
TwoNode.SetAttribute("ChartXAxisTitle", L2D.XAxisTitle);
TwoNode.SetAttribute("ChartYAxisTitle", L2D.YAxisTitle);
TwoNode.SetAttribute("Name", L2D.ChartName);
TwoNode.SetAttribute("Theme", L2D.ChartTheme.ToString());
TwoNode.SetAttribute("ChartDDSPartition", L2D.DDSPartition);
TwoNode.SetAttribute("ChartDDST