(Windows only; GUI for .NET)

Indicates if the query position (cursor) should be repositioned to the selected row after fetching data from another row. The default value is TRUE. Set to FALSE to avoid repositioning the bound query cursor to the selected row after fetching data from another row.

Data type: LOGICAL

Access: PUBLIC Readable/Writeable

Applies to: Progress.Data.BindingSource class

After the BindingSource fetches a new row, the query cursor is set back to the selected position. This selected position matches the Position property (BindingSource) and coincides with the user's selected row. Normally this repositioning is necessary in order to guarantee that when an event happens, the selected row is in the record buffer when the event handler code runs. For example, when the RowValidating event occurs, it is desirable to have the modified row in the buffer when the RowValidating event handler runs. Without repositioning, the behavior is not consistent.

However, there are some operations that do not require this repositioning. One application is when using the grouping operation of a Telerik RadGridView. To avoid the repositioning, set SyncToSelectedRow to FALSE when the grid fires the GroupByChanging event and reset it to TRUE when the GroupByChanged event fires.

Another use case for setting SyncToSelectedRow to FALSE is when report-mode is set to TRUE on a BindingSource constructor. Report-mode is used when generating reports in batch mode using a non-UI bound reporting object.