Articles in this section
Category / Section

How to accomplish RecordNavigationBar in the WinRT SfDataGrid like Syncfusion WindowsForms DataBoundGrid?

1 min read

The SfDataGrid does not support the RecordNavigationBar feature like the Syncfusion WindowsForms DataBoundGrid, but, it is possible to create the appearance and behavior of the RecordNavigationBar in the SfDataGrid by programmatically changing the SfDataGrid.SelectedIndex. To select the previous row or the next row, the SfDataGrid.SelectedIndex value is incremented or decremented. This is demonstrated in the following code example.

private void PreviousButton_Click(object sender, RoutedEventArgs e)
{
    if (this.datagrid.SelectedIndex > 0)
        this.datagrid.SelectedIndex = this.datagrid.SelectedIndex - 1;
    this.datagrid.ScrollInView(this.datagrid.SelectionController.CurrentCellManager.CurrentRowColumnIndex);
}
 
private void NextButton_Click(object sender, RoutedEventArgs e)
{
    var visualContainer = this.datagrid.GetVisualContainer();
    if (this.datagrid.SelectedIndex > -1 && (this.datagrid.ResolveToRowIndex(this.datagrid.SelectedIndex + 1) != visualContainer.RowCount))
    {
        this.datagrid.SelectedIndex = this.datagrid.SelectedIndex + 1;
        this.datagrid.ScrollInView(this.datagrid.SelectionController.CurrentCellManager.CurrentRowColumnIndex);
    }
}

 

The first and last record selection can be done with the SelectionHelper.GetFirstRowIndex() and SelectionHelper.GetLastRowIndex() methods.

 

private void FirstButton_Click(object sender, RoutedEventArgs e)
{         
    this.datagrid.ScrollInView(new RowColumnIndex(this.datagrid.GetFirstRowIndex(), 0));           
    this.datagrid.SelectedIndex = this.datagrid.GetFirstRowIndex() - 2;
}
private void LastButton_Click(object sender, RoutedEventArgs e)
{                 
    this.datagrid.ScrollInView(new RowColumnIndex(this.datagrid.GetLastRowIndex(),0));
    this.datagrid.SelectedIndex = this.datagrid.GetLastRowIndex() - 2;
}

 

Note:

The SfDataGrid.SelectedIndex is brought into view by using the SfDataGrid.ScrollInView() method when it is out of view.

 

 

The above code example is only applicable for the WPF platform. Refer to the attached example for WinRT and UWP platforms.

 

The following screenshot illustrates the record navigation bar in the SfDataGrid.

Record navigation bar

 

Sample Links:

 

WPF

 

WinRT

 

UWP

 

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments (0)
Please sign in to leave a comment
Access denied
Access denied