Вопросы с тегом «delegates»

131
Супер-простой пример наблюдателя / наблюдаемого C # с делегатами

Я недавно начал копаться в C #, но я не могу своей жизнью понять, как работают делегаты при реализации шаблона наблюдатель / наблюдаемый в языке. Может ли кто-нибудь дать мне супер-простой пример того, как это делается? Я бы гугле, но все примеры , которые я нашел , были либо слишком проблемы...

127
Оберните делегата в IEqualityComparer

Некоторые функции Linq.Enumerable принимают расширение IEqualityComparer<T>. Есть ли удобный класс-оболочка, который адаптирует delegate(T,T)=>boolдля реализации IEqualityComparer<T>? Его достаточно легко написать (если вы игнорируете проблемы с определением правильного хэш-кода), но...

124
Почему должно быть приведено лямбда-выражение, если оно предоставлено как простой параметр делегата

Возьмите метод System.Windows.Forms.Control.Invoke (метод делегата) Почему это дает ошибку времени компиляции: string str = "woop"; Invoke(() => this.Text = str); // Error: Cannot convert lambda expression to type 'System.Delegate' // because it is not a delegate type Тем не менее, это отлично...

124
«Вычитание делегата привело к непредсказуемому результату» в ReSharper / C #?

При использовании myDelegate -= eventHandlerReSharper (версия 6) возникают следующие проблемы: Вычитание делегата имеет непредсказуемый результат Причина этого объясняется здесь JetBrains . Объяснение имеет смысл, и, прочитав его, я сомневаюсь в том, что я использую его для -делегатов. Как тогда ,...

109
Где использовать делегатов? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы на него можно было ответить с помощью фактов и цитат, отредактировав этот пост . Закрыт 7 лет назад . Уточните этот вопрос Какие места в реальном мире требуют...

107
Разница между событиями и делегатами и соответствующими приложениями [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы на него можно было ответить с помощью фактов и цитат, отредактировав этот пост . Закрыт 2 года назад . Уточните этот вопрос Я не вижу преимуществ использования...

104
Синхронны ли события C #?

Этот вопрос состоит из двух частей: Имеет ли повышение события блокировать поток, или он начинается выполнение EventHandlers асинхронно и идет поток продолжается в то же время? Являются ли отдельные EventHandlers (подписались на событие) , которые выполняются синхронно один за другим, или они...

102
Ошибка неоднозначного вызова компилятора - анонимный метод и группа методов с Func <> или Action

У меня есть сценарий, в котором я хочу использовать синтаксис группы методов, а не анонимные методы (или синтаксис лямбда) для вызова функции. Функция имеет две перегрузки: одна принимает Action, а другая - Func<string>. Я могу с радостью вызвать две перегрузки, используя анонимные методы...

101
Когда бы вы использовали делегаты в C #? [закрыто]

В его нынешнем виде этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, повлечет за собой дебаты, аргументы, опросы или расширенное обсуждение. Если вы считаете, что этот вопрос можно...

98
Как узнать, что UICollectionView полностью загружен?

Мне нужно выполнить некоторую операцию всякий раз, когда UICollectionView был загружен полностью, т.е. в это время должны быть вызваны все методы источника данных / макета UICollectionView. Откуда я это знаю ?? Есть ли какой-либо метод делегата, чтобы узнать загруженный статус UICollectionView?...

95
Обертывание тайминга StopWatch с помощью делегата или лямбда?

Я пишу такой код, немного быстро и грязно: var sw = new Stopwatch(); sw.Start(); for (int i = 0; i < 1000; i++) { b = DoStuff(s); } sw.Stop(); Console.WriteLine(sw.ElapsedMilliseconds); Конечно , есть способ вызвать этот бит кода синхронизации как лямбда фантазийных schmancy .NET 3.0 , а не (...

93
Вызов (делегат)

Кто-нибудь может объяснить это заявление, написанное по этой ссылке Invoke(Delegate): Выполняет указанный делегат в потоке, которому принадлежит базовый дескриптор окна элемента управления. Может ли кто-нибудь объяснить, что это значит (особенно жирный), я не могу это четко понять...

91
Как добавить делегата в интерфейс C #

Мне нужно, чтобы в моем классе было несколько делегатов. Я хотел бы использовать интерфейс, чтобы «напомнить» мне установить этих делегатов. Как? Мой класс выглядит так: public class ClsPictures : myInterface { // Implementing the IProcess interface public event UpdateStatusEventHandler...

84
Назначение id <Delegate> из несовместимого типа ViewController * const_strong

Во всем моем приложении я получаю предупреждения о семантических проблемах, когда устанавливаю ViewController.delegate = self. Я искал и нашел похожие сообщения, но ни один из них не смог решить мою проблему. ViewController.m: GameAddViewController *gameAddViewContoller = [[navigationController...

83
Правильное соглашение об именах для типа делегата .NET?

По соглашению классы часто называются существительными, методы - глаголами, а интерфейсы - прилагательными. Какое общее соглашение об именах для делегата? Или как лучше отличить его имя, когда делегаты перечислены среди типов и других вещей? Мое непосредственное предположение состоит в том, чтобы...

82
Есть ли обратная сторона добавления анонимного пустого делегата при объявлении события?

Я видел несколько упоминаний этой идиомы (в том числе на SO ): // Deliberately empty subscriber public event EventHandler AskQuestion = delegate {}; Достоинства очевидны - это избавляет от необходимости проверять значение null перед запуском события. Однако я очень хочу понять, есть ли у этого...

81
В чем разница между Func <string, string> и delegate?

Я вижу делегатов в двух формах: A. Func<string, string> convertMethod = lambda B. public delegate string convertMethod(string value); Я не уверен, в чем на самом деле разница между этими двумя. Они оба делегаты? Я считаю, что первый будет использовать лямбду, а второй должен иметь метод для...