Ресурс конвертера WPF приводит к исчезновению несвязанного содержимого пользовательского интерфейсаC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Ресурс конвертера WPF приводит к исчезновению несвязанного содержимого пользовательского интерфейса

Сообщение Anonymous »

Я работаю разработчиком WPF уже около 10 лет и видел много идиотизма во всех формах и размерах, но сегодня я только что наткнулся на свежую партию коровьего навоза, который просто превосходен. Фактически, каждый существующий пирог.
Размещение конвертера вверху списка ресурсов Windows каким-то образом нарушает ресурсы объектов пользовательского интерфейса, которые идут после него.
Вот простейший пример приложения, воспроизводящего эту проблему, с наименьшим количеством кода, который я могу собрать:










0
1
2
3








Конвертер:
using System;
using System.Globalization;
using System.Windows.Data;
using System.Windows.Markup;

namespace WpfApp1.Converters
{
public class BaseConverter : MarkupExtension, IValueConverter
{
public virtual object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
return Binding.DoNothing;
}

public virtual object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return Binding.DoNothing;
}

public override object ProvideValue(IServiceProvider serviceProvider)
{
return this;
}
}
}

Это всего лишь простая попытка загрузить переменное количество элементов внутри ItemsControl, где каждый элемент представляет собой ContentControl, который заполняется как Grid, определенный в ресурсе.
Вот как предположительно должно выглядеть приложение на основе этого xaml:
Изображение

Это похоже на то, что x:Shared ломается и становится правдой или что-то, только потому, что ресурс конвертера был раньше этого.
Вещи, которые я тестировал:
  • Имя ключа конвертера не имеет значения
  • Тип преобразователя и/или реализация метода не имеют значения.
  • Элемент ItemsControl, имеющий привязанный ItemsSource, а не жестко запрограммированные записи, не имеет значения. не имеет значения
  • Фактическое содержимое внутри Grid не имеет значения
Конечно, удаление исправляет это, но вот что самое интересное: Размещение его последним в списке ресурсов ТАКЖЕ исправляет это.
...Ух ты. Просто вау. Что это это? Я мертв? Я мечтаю? Первоапрельский день запрограммирован в WPF, но он содержит ошибки (как и все остальное) и наступил на месяц позже? Может кто-нибудь объяснить это? Я схожу с ума.
Файл проекта, если это важно:



WinExe
net5.0-windows
true





Подробнее здесь: https://stackoverflow.com/questions/784 ... -disappear
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Почему добавление WindowCompat.setDecorFitsSystemWindows(window, false) в MainActivity приводит к исчезновению TextView
    Anonymous » » в форуме Android
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous
  • Активация виртуальной среды приводит к исчезновению Python?
    Anonymous » » в форуме Python
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Изменение текста TextMesh приводит к его исчезновению.
    Anonymous » » в форуме C#
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Прокрутка Div приводит к исчезновению отступа
    Anonymous » » в форуме CSS
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Jetpackcompose @previewparameter приводит к исчезновению предварительный просмотр
    Anonymous » » в форуме Android
    0 Ответы
    1 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»