Флажок Windows Phone Зачеркнуть/Изменить стиль шрифта

У меня есть список флажков, при проверке которых содержимое (текст) должно быть зачеркнуто или даже просто для изменения стиля шрифта (цвета) отмеченного элемента. Я пытаюсь сделать это в обработчике событий checkbox_Tap, который находится на моей странице кода программной части.

Любые идеи относительно того, как я могу изменить стиль шрифта или как я могу заставить его бить?


person djfranzwa    schedule 04.04.2013    source источник


Ответы (1)


Руководство по проектированию упомяните, что вы всегда должны использовать системный шрифт, если у вас нет определенного «бренда», хотя ничто не заставляет вас следовать этому.

CheckBox имеет свойства, которые вы можете установить в коде программной части для FontFamily, FontSize, FontStretch, FontStyle, Foreground и т. д.

В вашем обработчике событий CheckBox_Tap вы можете сделать что-то вроде:

void CheckBox_Tap(object sender, EventArgs e)
{
   CheckBox cb = (CheckBox)sender;
   cb.FontFamily = //<your new font here>
   cb.FontStyle = // <new style here>
}

Что касается Strikethrough - не похоже, что для этого есть встроенный способ (например, для Strikethrough нет специального свойства, которое вы можете просто установить в True).

Однако я наткнулся на этот пост, и есть ответ, который показывает хакерский способ сделать это в XAML (который я не пробовал) с использованием Border. Мне интересно, не могли бы вы попробовать это и обернуть свой CheckBox в Border, который по умолчанию невидим, а затем сделать его видимым, когда вы хотите зачеркнуть?

Надеюсь это поможет!

person lhan    schedule 04.04.2013
comment
Спасибо! Мне удалось решить эту проблему, сделав что-то очень похожее :) - person djfranzwa; 08.04.2013