У меня есть следующее событие, которое происходит, когда новый файл добавляетсясобытия для добавления и удаления переменной
public delegate void OnFileReceived(object sender, _File item);
private OnFileReceived _fileReceivedHandler = null;
public event OnFileReceived OnFileReceivedEvent
{
add { _fileReceivedHandler += value; }
remove { _fileReceivedHandler -= value; } //what does this line do?
}
public void AddFile(_File file)
{
RaiseFileEvents(file);
}
В заявке Конструктора
public void Initialize()
{
callback = new Callback();
callback.OnFileReceivedEvent += Callback_OnFileReceivedEvent;
}
public void Callback_OnFileReceivedEvent(object sender, _File file)
{
collection.Add(new _Item(file.Name,file.Path,file.Size));
}
Моя служба WCF называет это событие, чтобы добавить файл элемент в ListView клиента, я хотел бы, чтобы служба смогла также удалить файл. Должен ли я сделать другое событие для этого или могу ли я сделать это с одним и тем же событием? :
callback.OnFileReceivedEvent -= Callback_OnFileRemovedEvent;
заранее спасибо
Все, что вы делаете с этой последней строкой удаление подписки на 'Callback_OnFileRemovedEvent' так, что она не будет называться, когда' OnFileReceivedEvent пожары. Это фактически не удалит файл из вашей коллекции. Это не будет делать то, что вы намеревались. Может быть, я вас не понимаю. –