Мигающая цветная каретка, заставляющая другие поля мигать
Я работаю над проектом приложения Silverlight. Недавняя ошибка, с которой я сталкивался и пытаюсь устранить, заключается в том, что при применении цвета к CaretBrush в PasswordBox- будь то прямое шестнадцатеричное число или статический ресурс - мигание каретки вызывает другие PasswordBoxes и некоторые другие. случайные текстовые блоки на экране, чтобы мигать в унисон.
<Style TargetType="PasswordBox">
<Setter Property="CaretBrush" Value="{StaticResource MarkerBrush}" /> <Setter Property="Background" Value="{StaticResource MainBrush}" />
<Setter Property="Foreground" Value="{StaticResource MarkerBrush}" />
<Setter Property="Margin" Value="0 4" />
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="ToolTipService.ToolTip" Value="{Binding Text, RelativeSource={RelativeSource Self}}" />
</Style>
Назначение этой конкретной кисти StaticResource состоит в том, чтобы пользователь мог переключаться на темный экран, на котором черный текст становится белым, поэтому необходимо также инвертировать черную каретку. Когда к каретке не применяется цвет, нет проблем с миганием других полей, но каретка остается черной - ее трудно увидеть на темном фоне. Когда применяется цветная кисть, как показано выше, или в качестве значения, такого как #FF999999, другие поля PasswordBox на экране мигают, как только значение вставлено, а также TextBlocks внутри оболочки (верхний и нижний колонтитулы)- из совершенно другого документа XAML. Кроме того, фокусировка на другом поле приводит к полному исчезновению значений в паролях, пока фокус не вернется к любому из мигающих паролей.
Странное поведение и ТОЛЬКО происходит, когда цвет применяется к стилю PasswordBox. Какие-нибудь мысли?
Спасибо, Джон Гнотек