A reusable Previous/Next Contact Collection ViewModel class
A couple of comments:


It looks like the class only manages parties. This is nice SRP.
Use StyleCop, it makes code much easier to read and review.
Validate inputs, makes it much faster to find and fix bugs:

public PartiesViewModel(ObservableCollection&lt;Party&gt; parties)
{
    if (parties == null)
    {
        throw new ArgumentNullException(nameof(parties));
    }
    ...

Party = Parties.FirstOrCreateIfEmpty(); without knowing what this extension method does I don't love it as it requires me to navigate to another place in the code to see what it does. I guess it does something like this:

Party = Parties.FirstOrDefault() ?? new Party(...);

If this is the case I think you should drop the extension method.
Party.PropertyChanged += UpdatePartyShortNamesList;

I can't see that this subscription is updated anywhere. I would expect the subscription to be removed from the old party and added to the new party in the setter for Party. As it is now it is probably a bug and a memory leak.
public ObservableCollection&lt;Party&gt; Parties { get; set; } a public setter here suggests that the collection can be replaced (without notifying the view about it). I assume you want it to be a readonly property. This also applies to the command properties. 

In C#6 you express this as:

public ObservableCollection&lt;Party&gt; Parties { get; }

Prior to C#6 this was slightly more verbose:

private readonly ObservableCollection&lt;Party&gt; _parties;

public PartiesViewModel(ObservableCollection&lt;Party&gt; parties)
{
    _parties = parties;
}

public ObservableCollection&lt;Party&gt; Parties
{
    get { return _parties; }
}


Being explicit about what is readonly is a very good habit as it makes code easier to reason about and lets the compiler catch more bugs.
I have a feeling that binding SelectedIndex can simplify things a lot.
The command methods CanPressPrev etc. shall probably be private as the commands are normally the exposed means to interact with the viewmodel.
About reuse, this class looks like a nice candidate for composing with. Inject it in other viewmodels where the contact list is needed.


This got long, ending here.