private void Timer_Tick(object sender, EventArgs e) { if (IsRunning) { lock (((ICollection)_movingObjects).SyncRoot) { var fp = (GeometryFeatureProvider)_lyr.DataSource; foreach (var obj in _movingObjects) { obj.Step(_map.Envelope, StepSize); var fdr = (FeatureDataRow)fp.Features.Rows.Find(obj.Oid); fdr[2] = 90f - obj.Heading; fdr.AcceptChanges(); } } if (_lyr.Enabled) { _lyr.RaiseRenderRequired(); } if (_llyr.Enabled) { _llyr.RaiseRenderRequired(); } } }