У меня есть приложение панорамы WP7, которое использует темное изображение для фона панорамы. Проблема в том, когда на устройстве установлена светлая тема. Основной причиной проблемы является то, что анимация перехода состояния фокуса для TextBox устанавливает прозрачный цвет фона.
Поскольку моя панорама всегда темная, я бы хотел, чтобы текстовое поле всегда было белым.
Первая попытка установить фон текстового поля на белый.
FAIL: переход изменяет фон обратно на прозрачный, когда текстовое поле получает фокус.
Следующая попытка программно установить белый фон для текстового поля на gotfocus.
FAIL: переход изменяет фон обратно на прозрачный, когда текстовое поле получает фокус.
Следующая попытка переопределить шаблон управления и изменить переход.
FAIL: никогда не мог порадоваться WP7, не уверен, что использовал правильную версию
Следующая попытка переопределить шаблон управления с использованием Blend 4.
FAIL: возможно, что-то упустил, но каждое состояние выглядело правильно.
Я вижу, что у многих других возникает такая же проблема, но нет, это именно то, что вам нужно сделать, чтобы вы не запутались в каких-то мелких деталях.
Если вы можете помочь нам с решением, пожалуйста, поделитесь.
Вот что я попробовал с Blend 4.
Открыл мой проект в Blend 4, выбрал мое текстовое поле, щелкнул по нему правой кнопкой мыши, выбрал «Редактировать шаблон», а затем «Редактировать копию».
Здесь я не совсем уверен, что мне нужно делать.
Я пошел в FocusStates и выбрал Focused. То, что я вижу на панели предварительного просмотра, выглядит так, как я хочу. Хорошее текстовое поле с белым фоном.
Я смотрю на http://msdn.microsoft.com/en-us/library/cc645061%28v=vs.95%29.aspx и вижу анимацию раскадровки для различных FocusStates, и я полагаю, что в WP7 должна быть такая, которая позволяет текстовым полям иметь прозрачный фон, когда они имеют фокус в светлой теме.
Моя цель сделать так, чтобы у моего текстового поля был белый фон, поскольку у меня панорама с темным фоновым изображением, по меньшей мере, оказалось трудным.