MVVM Grouping Items in ListView

I found answer on this question by myself.

The object that is sent into the converter is of the type: MS.Internal.Data.CollectionViewGroupInternal.

The main reason is to use "Name" for databinding the group names is simply because that is the property in CollectionViewGroupInternal that contains the name that the current "group collection" has (according to the GroupDescription that you specified).

Not important What was GropertyName in PropertyGroupDescription. You have to always use {Binding Path=Name} in GroupStyle container.

I had to change only one string in my XAML.

From:

<TextBlock FontWeight="Bold" Text="{Binding Path=FirstName}"/>

To:

<TextBlock FontWeight="Bold" Text="{Binding Path=Name}"/>