Привет, у меня действительно странный эффект:
У меня есть главное окно, содержимое которого заполнено полным визуальным деревом, содержащим представление формы.
Первая форма для отображения — это родительская форма, которая позволяет вызывать дочернюю форму.
Когда я загружаю дочернюю форму, Parent в основном копируется в стек, а затем новое содержимое устанавливается в окно.
Когда я закрываю дочернюю форму, резервный родительский элемент возвращается в качестве содержимого окна, а дочернее окно удаляется.
Теперь о проблеме: я загружаю коллекцию объектов в список. В списке используются текстовые блоки для отображения свойств объектов (FirstName, LastName, PhoneNumber, MobileNumber, Email), и после каждого текстового блока в Xaml содержится запятая для разделения записей.
НО: если текстовый блок пуст, соответствующая запятая не должна отображаться, как показано ниже:
Мне удалось сделать это с помощью конвертера, который анализирует, какие запятые показывать.
Это работает отлично, но когда я показываю дочернюю форму и закрываю ее, отображение искажается относительно видимости запятой:
Я сделал два наблюдения:
- Поврежденное отображение происходит только тогда, когда у меня культура пользовательского интерфейса отличается от en-US (de-DE в моем случае).
- Я поместил некоторые трассировки в код преобразователя и вижу, что преобразователь вызывается после открытия (и закрытия) дочерней формы, когда я использую de-DE, но не когда я использую en-US.
Есть ли какие-либо идеи, что может вызвать такие эффекты? И как мне их обойти?
С уважением