New to Telerik Test Studio? Download free 30-day trial

Go Through Each Cell in a WPF RadGridView

I would like to go through each cell in a WPF RadGridView and perform some action or verification.

Solution

This is possible with a coded solution. Here's an example that goes through all the visible cells in a WPF demo grid (as opposed to all the cells contained in the grid). It writes the text content of each cell into the test log.

WpfApplication app = Manager.ActiveApplication; 
Assert.IsNotNull(app); 
 
Telerik.WebAii.Controls.Xaml.Wpf.RadGridView grid = app.MainWindow.Find.ByName<Telerik.WebAii.Controls.Xaml.Wpf.RadGridView>("RadGridView1"); 
Assert.IsNotNull(grid); 
 
int rowCounter = 1; 
 
foreach (Telerik.WebAii.Controls.Xaml.Wpf.GridViewRow gRow in grid.Rows) 
{ 
    Log.WriteLine("<----------Start of Row " + rowCounter.ToString() + "---------->"); 
 
    int cellCounter = 1; 
    foreach (Telerik.WebAii.Controls.Xaml.Wpf.GridViewCell gCell in gRow.Cells) 
    { 
        Log.WriteLine(gCell.TextBlockContent); 
        cellCounter++; 
    } 
    rowCounter++; 
} 
Dim app As WpfApplication = Manager.ActiveApplication 
Assert.IsNotNull(app) 
 
Dim grid As Telerik.WebAii.Controls.Xaml.Wpf.RadGridView = app.MainWindow.Find.ByName(Of Telerik.WebAii.Controls.Xaml.Wpf.RadGridView)("RadGridView1") 
Assert.IsNotNull(grid) 
 
Dim rowCounter As Integer = 1 
 
For Each gRow As Telerik.WebAii.Controls.Xaml.Wpf.GridViewRow In grid.Rows 
    Log.WriteLine("<----------Start of Row " + rowCounter.ToString() + "---------->") 
 
    Dim cellCounter As Integer = 1 
    For Each gCell As Telerik.WebAii.Controls.Xaml.Wpf.GridViewCell In gRow.Cells 
        Log.WriteLine(gCell.TextBlockContent) 
        cellCounter += 1 
    Next 
    rowCounter += 1 
Next 
In this article