public void ChangePos(long pos, object sender, bool refreshSender = false) { if (_state.Pos == pos) { return; } _state.Pos = pos; if (mainView != sender || refreshSender) { mainView.Refresh(); } if (scr != sender || refreshSender) { scr.Refresh(); } //start loading? LoadLazyLogIfNeeded(); //no need to serialize, non-persistant property changed }