Я думаю очевидно, что я до сих пор не имею понятия, что такое afl и искать не собираюсь. Краткая справка в начале статьи даёт возможность понять, нужна ли мне эта штука, я могу прочитать это чисто из любопытства или я могу спокойно пройти мимо. Отсутствие оставляет 2 варианта: пройти мимо и высказать своё «фи».
А в текущем варианте получается «я открыл для себя фингербоксинг 5 лет и теперь решил применить его для покраски потолка»
Для использования в качестве элементов списка вы можете использовать такой код:
List.ItemsSource = Foos
Если вы хотите обновлять элементы из кода, то обновляемые поля должны быть INotifyPropertyChanged или ObservableCollection. Либо дёргать обновление вручную из кода, что наверняка возможно, но я не знаю как. Ибо никогда не использовал.
Но, впрочем, стоит уточнить, что C#/WPF не являются моей основной платформой уже лет 5 как. Так что я не последняя инстанция.
Всё, понял. Что неправильно понял. Можете подробнее описать, что бы хотите сделать? Вы имеете ввиду Dependency Injection?
Код, что я привёл, по сути кастомный сеттер свойства. А-ля public B Prop { set; get; }, но с поддержкой XAML, на случай, если вы хотите мгновенно реагировать на изменения в интерфейсе (например, обновлять по мере ввода текста результаты поиска)
— Где-нибудь как-нибудь устанавливаете DataContext элемента управления на экземпляр класса (пусть будет A)
— Добавляете DependencyProperty «Prop» типа B в класс A вот так:
public static readonly DependencyProperty PropProperty =
DependencyProperty.Register("Prop", typeof(<B>),
typeof(ActionPanel), new FrameworkPropertyMetadata(null, (DependencyObject d, DependencyPropertyChangedEventArgs e) => {
// Вот тут ваш callback
}));
public B Prop
{
set { SetValue(PropProperty, value); }
get { return (B)GetValue(PropProperty); }
}
— Биндите свойство в Xaml как вам нужно (если свойство меняется из интерфейса — скорее всего понадобится TwoWay binding) ( <local:A Prop="{Binding}" />)
P.S.: Да, я знаю, что код ужасен. Именно поэтому я жалею об отсутствии препроцессора: он помог бы обернуть бойлерплэйт во что-нибудь вменяемое.
В стандартной разметке это вполне можно сделать через Dependity Property, на который забинден объект. Другой вопрос, что этот код не отличается вменяемостью (место, в котором я ДЕЙСТВИТЕЛЬНО жалею об отсутствии препроцессора в C#)
Появляюсь на Хабре раз в месяц, поэтому в эту кнопку ещё не тыкал. Честно говоря я думал, что она прокрутит блок кнопок до 9-15 без обновления страницы
Безумная идея от никогда не работавшего с нейросетями:
Разнородность данных подталкивает в поиску общего в них:
Возможно, стоит попробовать представить данные не в виде отмасштабированных картинок, а в виде набора точек? Это избавит от мыла, вносимого масштабированием (изменение на размера 1% в этом плане просто ужасно )
На ЭЛТ-мониторах и телевизорах эффект усиливался высокой задержкой при изменении цвета. То есть, в результате цвет действительно отображался, будучи смешанным за счёт задержки при затухании точки экрана.
Я такой же приём видел на NES (Dendy, если точнее) в Battle City. На эмуляторах его колбасит точно так же, как и дракона на видео прохождения.
А как мне отключить:
— Внезапно открывающиеся сообщения от Vivaldi (вроде сообщения об обновлении), всплывающие поверх других приложений и перехватывающие ввод (даже если другое приложение было в полноэкранном режиме)?
— Бесполезные сообщения (в том числе из фоновых вкладок) с блокировкой ввода о том, что файл «опасен» (100% срабатываний были ложными)?
P.S.: Нет, я не буду регистрироваться на форуме, это вам нужно, а не мне :)
> У них оптимизация кода — это идея фикс
К сожалению — это суровая необходимость, которая уменьшает шансы появления багов (ну или делает их более заметными, если таковые всё же появляются)
Но вообще, в данном месте разработчик не учёл семантику, да.
А хранение «rich»-строк а файлах локализации — это всегда настоящая боль. Ни одна из известных систем не поддерживает эту фичу из коробки, всегда приходится писать костыли разной степени упоротости.
А в текущем варианте получается «я открыл для себя фингербоксинг 5 лет и теперь решил применить его для покраски потолка»
List.ItemsSource = Foos
Если вы хотите обновлять элементы из кода, то обновляемые поля должны быть INotifyPropertyChanged или ObservableCollection. Либо дёргать обновление вручную из кода, что наверняка возможно, но я не знаю как. Ибо никогда не использовал.
Но, впрочем, стоит уточнить, что C#/WPF не являются моей основной платформой уже лет 5 как. Так что я не последняя инстанция.
Код, что я привёл, по сути кастомный сеттер свойства. А-ля public B Prop { set; get; }, но с поддержкой XAML, на случай, если вы хотите мгновенно реагировать на изменения в интерфейсе (например, обновлять по мере ввода текста результаты поиска)
— Добавляете DependencyProperty «Prop» типа B в класс A вот так:
— Биндите свойство в Xaml как вам нужно (если свойство меняется из интерфейса — скорее всего понадобится TwoWay binding) ( <local:A Prop="{Binding}" />)
P.S.: Да, я знаю, что код ужасен. Именно поэтому я жалею об отсутствии препроцессора: он помог бы обернуть бойлерплэйт во что-нибудь вменяемое.
Я уже и не помню, про что статья должна быть :)
Фасованные сосиски, наклейка:
Сосиски Какие-То-Там 1 КГ
«1 КГ» — часть названия, на самом деле вес ~700 грамм.
Разнородность данных подталкивает в поиску общего в них:
Возможно, стоит попробовать представить данные не в виде отмасштабированных картинок, а в виде набора точек? Это избавит от мыла, вносимого масштабированием (изменение на размера 1% в этом плане просто ужасно )
Я такой же приём видел на NES (Dendy, если точнее) в Battle City. На эмуляторах его колбасит точно так же, как и дракона на видео прохождения.
NSObject — базовый класс в Objective-C для вcего, является классом.
— Внезапно открывающиеся сообщения от Vivaldi (вроде сообщения об обновлении), всплывающие поверх других приложений и перехватывающие ввод (даже если другое приложение было в полноэкранном режиме)?
— Бесполезные сообщения (в том числе из фоновых вкладок) с блокировкой ввода о том, что файл «опасен» (100% срабатываний были ложными)?
P.S.: Нет, я не буду регистрироваться на форуме, это вам нужно, а не мне :)
К сожалению — это суровая необходимость, которая уменьшает шансы появления багов (ну или делает их более заметными, если таковые всё же появляются)
Но вообще, в данном месте разработчик не учёл семантику, да.
А хранение «rich»-строк а файлах локализации — это всегда настоящая боль. Ни одна из известных систем не поддерживает эту фичу из коробки, всегда приходится писать костыли разной степени упоротости.