Можно примерно так:
// Получаем выделенные фичи
IEnumFeature enumFeature = (IEnumFeature)axMapControl.Map.FeatureSelection;
// Первая фича из выделения
IFeature feature = enumFeature.Next();
// Если хотя-бы одна фича выделена
if (feature != null)
{
// *** Расчитываем будущую видимую область для карты
// *** В результате получаем прямоугольник, описывающий все контура выделенных фичей
// Прямоугольник - видимая область
IEnvelope featuresExtent = feature.Extent;
// Цикл по выделенным фичам
while (feature != null)
{
// Добавляем к выделенной области текущую фичу
featuresExtent.Union(feature.Extent);
// Получаем следующую фичу из выделения
feature = enumFeature.Next();
}
// Расширяем полученную область
featuresExtent.Expand(1.5, 1.5, true);
// Задаем видимую область карты
axMapControl.Extent = featuresExtent;
}