powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Динамическое создание TabPages в TabControl
5 сообщений из 5, страница 1 из 1
Динамическое создание TabPages в TabControl
    #32831613
_Sania
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В процессе работы программы ясоздаю TabPages, например

TabPage tp = new TabPage("Ошибки");
rtbError = new RichTextBox();
rtbError.Parent = tp;
rtbError.Dock = DockStyle.Fill;
tbResult.TabPages.Add(tp);

Причем rtbError определена как private RichTextBox rtbError в самой форме.

При запуске нового сеанса обработки, TabPages удаляются (не известно заранее - может ошибок не будет).

if(rtbError != null) rtbError.Dispose();
rtbError = null; // в C++ надо было бы писать delete rtbError, а в C# что?
tbResult.TabPages.Clear();

Таким образом все очищается корректно или я что-то пропустил?
Мне нужно, что бы rtbError очищалась сразу, может есть какие-то другие подходы?
...
Рейтинг: 0 / 0
Динамическое создание TabPages в TabControl
    #32832447
Por
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Por
Гость
_Sania if(rtbError != null) rtbError.Dispose();
rtbError = null; // в C++ надо было бы писать delete rtbError, а в C# что?

А в C# - ничего.

.NET Framework Developer's Guide
Developer Backgrounds in Memory Management
...
When you develop applications using the Managed Extensions for C++, or another language that targets the common language runtime, you do not have to use the delete operator to release an object. The garbage collector does this for you automatically when the object is no longer being used by the application.
...
...
Рейтинг: 0 / 0
Динамическое создание TabPages в TabControl
    #32832571
_Sania
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Совсем ничего не делать после Dispose() не получается - т.к. в дальнейше у меня в коде идет проверка на rtbError == NULL и она выдает false, а уже при использовании, например rtbError.AppendText, говорит - что такого объекта нет.
Понятно, что сборщик мусора может отработать не сразу, а через некоторое время.

После выполнения
rtbError = NULL;
в его работе сбоя не будет (т.е. все корректно очистится)?
...
Рейтинг: 0 / 0
Динамическое создание TabPages в TabControl
    #32832763
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем вызывается Dispose? Вы его перегружали? Почему не сразу

if(rtbError != null)
rtbError = null;

?
...
Рейтинг: 0 / 0
Динамическое создание TabPages в TabControl
    #32833521
_Sania
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
to hDrummer

>А зачем вызывается Dispose? Вы его перегружали?
Пока нет, но в последствии возможно придется, будут использоваться файлы и т.д.

rtbError = null;
Этого достаточно для очистки объекта?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Динамическое создание TabPages в TabControl
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]