Sorry, but I do not really understand the question. There is an example in the demo program TimeVariableControlCharts.DynamicXBarRChart. The SPCControlLimitAlarm method in that source file processes the alarm events. So if that method is called, an alarm has been triggered. You would send your e-mail from within the event. I don't know what else you are looking for.
You must setup the alarm processing properly in the setup part of the program:
this.ChartData.AlarmStateEventHandler += new SPCControlLimitAlarmEventDelegate(this.SPCControlLimitAlarm);
In that example the SPCControlLimitAlarm looks like:
private void SPCControlLimitAlarm(object sender, SPCControlLimitAlarmArgs e)
{
SPCControlLimitRecord alarm = e.EventAlarm;
double alarmlimitvalue = alarm.ControlLimitValue;
String alarmlimitvaluestring = alarmlimitvalue.ToString();
SPCControlChartData spcData = alarm.SPCProcessVar;
SPCCalculatedValueRecord spcSource = e.SPCSource;
String calculatedvaluestring = spcSource.CalculatedValue.ToString();
String message = alarm.AlarmMessage;
ChartCalendar timestamp = spcData.TimeStamp;
String timestampstring = timestamp.ToString();
String notesstring = "\n" + timestampstring + " " + message + "=" + "\n" +
alarmlimitvaluestring + " Current Value" + "=" + calculatedvaluestring;
if (alarm.AlarmState)
// Console.Out.WriteLine(notesstring);
this.ChartData.AppendNotesString(notesstring, true);
}