Catching information about blocking that has not occurred yet? Nah, SQL Server is not that advanced.
But what you can do is run this:
EXEC sp_configure 'blocked process threshold (s)', N
RECONFIGURE
Where N is a number divisible by 5. Say that you set to 20. If SQL Server finds that a blocking situation has been going on for 20 seconds, SQL Server will then generate a blocked-process event. You can then track these events with Trace, Extended Events or Event Notifications. These events information includes information about the blocking situation. What commands the blocker and the blockee is running and which locks the blockee is waiting for.