У меня есть набор текста, который я хотел бы поставить в RichTextBox, который идет как так:Надстрочные + Подчеркнутый инлайн в RichTextBox в WPF
Так что я использовал RichTextBox, так как это позволяет мне нужно сделать следующее.
var zipCodeParagraph = new Paragraph();
string zipCodes = String.Empty;
var dateRun = new Underline(new Run(DateTime.Today.DayOfWeek + ", " + CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(DateTime.Today.Month) + ' ' + DateTime.Today.Day));
Underline dateSuperscript;
switch (DateTime.Today.Day % 10)
{
case 1:
dateSuperscript = new Underline(new Run("st"));
break;
case 2:
dateSuperscript = new Underline(new Run("nd"));
break;
case 3:
dateSuperscript = new Underline(new Run("rd"));
break;
default:
dateSuperscript = new Underline(new Run("th"));
break;
}
dateSuperscript.BaselineAlignment = BaselineAlignment.Superscript;
if (ZipCodes.Any())
{
zipCodeParagraph.Inlines.Add(new Run("The following zip codes are facing a "));
zipCodeParagraph.Inlines.Add(new Underline(new Run("Severe Weather Threat")));
zipCodeParagraph.Inlines.Add(new Run(" on "));
zipCodeParagraph.Inlines.Add(dateRun);
zipCodeParagraph.Inlines.Add(dateSuperscript);
zipCodes = String.Join(", ", ZipCodes.ToArray());
}
Исход, однако, например, так:
Проблема заключается в том, что при изменении исходных условий текста, чтобы быть верхний индекс/нижний индекс, то подчеркивание изменения в той высоте, а также. Я бы хотел, чтобы подчеркивание оставалось там, где оно есть, и для супер-скриптинга.
Я нашел только одно близкое решение, которое не делает это программно here.
Это сработало! Большое спасибо! :) – AzzamAziz