It's working as I expected, there is one change though.
The e.RebindReason comes as "DetailTableBinding | PostBackEvent", so we need to use Bitwise enum operation to check this.
Here's the code I used:
if ((e.RebindReason & GridRebindReason.DetailTableBinding) != GridRebindReason.DetailTableBinding)