Firstly, there is nothing wrong with using the code behind to handle events when using MVVM. Secondly, even if you really don't want to use the code behind in these situations, then you can handle that event in an MVVM-friendly manner by implementing an Attached Property.
Rather than explaining the whole situation again in this question, I'd prefer to recommend that you read through my answer to the What's the best way to pass event to ViewModel? question here on Stack Overflow. It contains a full code example and although it deals with a different event, that makes little difference... just replace the GetPreviewKeyDown
event with your Completed
event instead.