In your FeatureActivated handler you need to iterate through your lists and pick the the list with the Content Type "abc" for the item event handler.
See this 2-part series for details - Event Receivers Part 1- Create Event Receiver for Content Types.
(part 2 has the FeatureActivated code).
To elaborate the details (adapted from part 2 above) -
1). register for all lists using the content type - this would be in FeatureX.EventReceiver.cs
public override void FeatureActivated(SPFeatureReceiverProperties properties)
SPWeb web = properties.Feature.Parent as SPWeb;
SPListCollection lstCollection = web.Lists;
foreach (SPList lstToUpdate in lstCollection)
if (lstToUpdate.ContentTypes["fooContentType"] != null)
SPEventReceiverDefinitionCollection defColl = lstToUpdate.EventReceivers;
// do ItemDeletion class & def registration here
... catch, etc..
2). In the list item deletion event handler - this would be in the ItemDeletionEventReceiver.cs
public override void ItemDeletion(SPItemEventProperties properties)
properties.Web.AllowUnsafeUpdates = true;
this.EventFiringEnabled = false;
itemList = properties.List;
// check for ContentType of list
// if contentype = "fooContentType" //"abc"
// ITEMDELETION action, etc....
... catch, etc..
Here's another example & approach - Developing an Event Receiver for a Content Type
Step 4 in this example uses ItemAdded but can be replaced by another event. Also, note that the event receivers are custom built (not by Wizard) for Content Type. The bottom part of Step 4 shows how to link the event receiver to the Content Type ("abc") and Step 5 shows how to modify the Content Type to add the Event Receiver.