Для задач, которые займут более нескольких секунд, хороший пользовательский интерфейс, на мой взгляд, должен обеспечивать индикатор выполнения вместе с соответствующей информацией о ходе выполнения операции. (Microsoft любезно предоставила рекомендации по интерфейсу пользователя по этой теме, но я хочу панель состояния, которая немного более продвинута.)
Класс «задача», который я использую, может регистрировать сообщения, и если сообщения достаточно важны (предупреждение или ошибка), я хотел бы отображать их на панели прогресса. Также было бы неплохо с графической индикацией появления предупреждений или ошибок (возможно, со значком предупреждения или ошибки). Если таких сообщений много, текстовое поле, представление списка или, возможно, какой-нибудь элемент управления отчетом здесь может быть уместно.
Во время выполнения задачи может быть кнопка отмены, а после ее завершения кнопка «Просмотр журнала» также была бы полезна.
Подводя итог, у меня есть хорошее представление о том, как реализовать свою панель состояния, но мне действительно хотелось бы получить какие-то комментарии по этому поводу. Я пропустил что-то важное? Я переборщил с этим? Возможно, уже существуют какие-либо подобные компоненты?