Best Way is to create a server side TRACE with the Blocking events and monitor the Trace with a TSQL using ::fn_trace_gettable Function from a SQL JOB.
OR Write the Blocking/DEADLOCK to SQL Error Log (Be very cautious - Log file size might Grow faster) and create a TSQL-Job to Monitor the SQL Log.
OR a solution here: http://www.sqlservergeeks.com/blogs/Abhay_c/sql-server-bi/472/sql-server-real-time-monitoring-using-wmi-classes-part-1
OR use the Activity Monitor to monitor blocking Actively (but hiccups with continually keeping the monitor up)
Maninder
www.dbanation.com