To capture a user activity that does not generate a regular pageview, you can code either an event or a virtual pageview.
Each has its advantages and disadvantages. Since events don’t generate pageviews, they don’t increase your pageview count and therefore do not affect metrics such as pageviews/visit.
If, however, you want to analyze pages that were viewed before and after this action, you must opt for the virtual pageview, since you can view the Navigation Summary for a virtual page but not for an event.
To ensure that you can still view total pageviews and pageviews/visit without inflation due to virtual pageviews, you can create an additional profile and apply a filter that excludes the Request URI(s) corresponding to the virtual pageviews.