private void btnLoad_Click(object sender, EventArgs e)
{
OpenFileDialog d = new OpenFileDialog();
d.DefaultExt = "xml";
d.Filter = "XML (*.xml)|*.xml";
if (d.ShowDialog() != DialogResult.OK)
return;
try
{
string s = d.FileName;
XmlSerializer x = new XmlSerializer(typeof(List<SlopedFacilitySegment>));
StreamReader reader = new StreamReader(s);
if (_facility.Segments == null)
_facility.Segments = new List<SlopedFacilitySegment>();
_facility.Segments.Clear();
slopedFacilityBindingSource.ResetBindings(false);
segmentsBindingSource.ResetBindings(false);
_facility.Segments.AddRange(
(List<SlopedFacilitySegment>)x.Deserialize(reader));
_segments = _facility.Segments;
segmentsBindingSource.DataSource = _segments; // reset the pointer
slopedFacilityBindingSource.ResetBindings(false); // re-read all items in list and refresh displayed values
segmentsBindingSource.ResetBindings(false);
reader.Close();
this.Refresh();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}