Насколько я знаю, не существует подходящего способа сделать это, поэтому следующее следует считать хаком.
Предположим, что дата хранится в DateTime. Как оно туда попало, не важно.
Теперь задача состоит в том, чтобы преобразовать его в строковое представление в соответствии с форматом краткой даты, каким бы оно ни было, но с yyyy вместо yy.
http://www.basicdatepicker.com/samples/cultureinfo.aspx
Похоже, что форматы коротких дат содержат yyyy или yy почти во всех культурах, поэтому давайте сделаем это предположение.
Теперь преобразование можно выполнить таким образом.
var sampleDate = new DateTime(1992, 12, 31);
var formatString = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern;
var newFormatString = formatString.Replace("yyyy", "yy");
var sampleDateAsString = sampleDate.ToString(newFormatString);
Если исходная строка формата не содержит «гггг», тогда новая строка формата будет такой же, как и исходная.
Конечно, вы можете получить ShortDatePattern для любой культуры, а не только для текущей культуры, как показано здесь.