WPF CheckBox IsChecked переключается на разные события

Кто-нибудь знает причину поведения флажка WPF, когда он (кажется) отображает IsChecked true в событии MouseLeftButtonDown и false в событии MouseLeftButtonUp?

Причина, по которой я спрашиваю, заключается в том, что я реализую CheckBox в существующей сетке, где текст находится слева, а не справа от CheckBox. Самым простым способом было добавить TextBlock и немного кода программной части, но если я хочу быть последовательным, это означает добавление как событий, так и проверки состояния для каждого из них.


person si618    schedule 27.03.2011    source источник


Ответы (1)


Если все, что вам нужно, это чтобы CheckBox имел текст слева, почему бы просто не изменить его шаблон: http://www.codeproject.com/KB/WPF/WPFCheckboxTextOnLeft.aspx
http://social.msdn.microsoft.com/Forums/en/wpf/thread/85673c27-01e6-4f8e-96a5-1847bb44abc4

person publicgk    schedule 27.03.2011
comment
Флажки находятся в сетке с другими элементами управления с собственными текстовыми блоками, такими как поле со списком и текстовое поле. Я хочу, чтобы текст флажка был выровнен по левому краю с другими метками текстового блока (размер которого автоматически изменяется, что важно для i18ln), а сам флажок был правильно выровнен с другими элементами управления вводом данных. Я уже прочитал статью о проекте кода и не думаю, что она хорошо решит мою конкретную проблему. Мой вопрос действительно касается попытки найти причину, по которой поведение флажка использует разные события в зависимости от состояния IsChecked. - person si618; 28.03.2011