I was able to solve this problem myself using IsSelected property of the TabItem.
I created a property IsTabSelected to DashboardTabViewModel and bind that to TabItem's IsSelected property and after that get the navigation service from scoped region manager only when IsTabSelected == true and publish it in an event.
bIsTabSelected = value;
// Send event with Navigation service to handle back/forward navigation under this Tab
var dashboardEvent =
DashboardTabOpenParams eventParams =
This seems to be good enough way of doing this at least for now, of course I'm accepting other ways for possible improvement :)