private void importButton_Click(object sender, EventArgs e) { Cursor priorCursor = null; RFID_Explorer.mainForm.CommonDialogSupport dlg = new mainForm.CommonDialogSupport(mainForm.CommonDialogSupport.DialogType.OpenAntenna); if (dlg.ShowDialog( ) == DialogResult.OK) { try { this.Capture = true; priorCursor = Cursor.Current; Cursor.Current = Cursors.WaitCursor; try { Source_AntennaList loadedAntennaList = RFID_Explorer.ExcelExport.ImportAntennaConfig(this.reader, dlg.FileName); rfid.Constants.Result result = loadedAntennaList.store(LakeChabotReader.MANAGED_ACCESS, this.reader.ReaderHandle); if (rfid.Constants.Result.OK != result) { throw new Exception(result.ToString( )); } this.antennaList.Clear( ); this.antennaList.AddRange(loadedAntennaList); view.Refresh( ); } catch (Exception e2) { MessageBox.Show(String.Format("Error importing antenna settings.\n\nThe import file contains this.errors and cannot be used until corrected.\n\n{0}", e2.Message), "Invalid import file", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } finally { if (priorCursor != null) { Cursor.Current = priorCursor; } this.Capture = false; } } }
public override object ConvertFrom( System.ComponentModel.ITypeDescriptorContext context, System.Globalization.CultureInfo culture, Object value ) { Source_AntennaList antennaList = new Source_AntennaList( ); if ( String.IsNullOrEmpty( value as string ) ) { return antennaList; } String[ ] antennaStrings = ( value as String ).Split( new Char[ ] { ';' } ); if ( null == antennaStrings ) { return antennaList; } foreach ( String s in antennaStrings ) { Object obj = TypeDescriptor.GetConverter( typeof( Source_Antenna ) ).ConvertFromString( s ); if ( null == obj ) { // TODO : supply err msg || rely on Source_Antenna converter for msg } else { antennaList.Add( obj as Source_Antenna ); } } return antennaList; }
private Result initAntennaList( ) { this.antennaList = new Source_AntennaList( ); return Result.OK; }