Форум программистов, компьютерный форум, киберфорум
Наши страницы

Visual Basic .NET

Войти
Регистрация
Восстановить пароль
 
badmoon
0 / 0 / 0
Регистрация: 27.12.2016
Сообщений: 2
#1

.NET 4.x Отсутствует программно созданная форма в списке Application.Openforms - Visual Basic .NET

27.12.2016, 15:36. Просмотров 177. Ответов 2
Метки нет (Все метки)

Здравствуйте!

В процессе выполнения программы на VB.Net создаю форму со свойством ShowItTaskBar = False. Затем пытаюсь заблокировать ее повторное создание поиском ее в Application.Openforms. А ее там нет!
Кто-нибудь сталкивался с подобным? На одном иностранном форуме обнаружил схожую тему, но результата исправления такого косяка не нашел.

Добавлено через 3 часа 8 минут
Если интересно, решил проблему костылями: добавил boolean переменную, проверяя которую программа выходит из процедуры создания формы. Она же сбрасывается, когда это необходимо, после чего процедура создания формы срабатывает.
Однако это кривое исполнение, поэтому оно приемлемо для маленького проекта или проекта с небольшим количеством подобных ситуаций. Если Вы знаете более универсальное решение, напишите, пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.12.2016, 15:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос .NET 4.x Отсутствует программно созданная форма в списке Application.Openforms (Visual Basic .NET):

Как перевести Console Application в Windows Application - Visual Basic .NET
Imports System.Console Module Module1 Sub Main() Dim S() As Char WriteLine("Введiть те, що хочите...

Application.OpenForms и ООП - C#
Буквально на этой неделе узнал про такую конструкцию, которая позволяет обратиться к любой форме приложения в обход всяких там event'ов,...

Как добавить форму в коллекцию Application.OpenForms? - C#
Друзья добрый день. Использую такой метод: private void button1_Click(object sender, System.EventArgs e) { long count; Form2...

Программно созданная таблица в datagridview - C#
И так я создал программно таблицу в datagridview теперь вопрос как перевести все данные из нее по строчно и засунуть в запрос ? По...

Не работает кнопка, созданная программно - jQuery
Всем привет. Недавно начал изучать javascript. Работаю c API Яндекс Карт. Они пользуются библиотекой jQuery, так что я тоже решил...

Созданная форма не активна - Delphi
В созданной 2 форме операции не активны, кнопки и др. не работают. Delphi XE, помогите не знаю в чем проблема.

2
MrCrown
555 / 534 / 129
Регистрация: 03.10.2012
Сообщений: 572
28.12.2016, 12:41 #2
Цитата Сообщение от badmoon Посмотреть сообщение
А ее там нет!
Возможно, вы не присвоили новой форме имя

vb.net
1
2
3
4
5
6
7
8
Dim f As New Form
        f.Name = "NewForm"
        f.ShowInTaskbar = False
        f.Show()
        MsgBox(Application.OpenForms.Count)
        For Each frm As Form In Application.OpenForms
            MsgBox(frm.Name)
        Next
1
badmoon
0 / 0 / 0
Регистрация: 27.12.2016
Сообщений: 2
28.12.2016, 15:30  [ТС] #3
Спасибо!
Невероятно, что такая ерунда оказалась ответом. Я практически никогда не называю динамические объекты, особенно формы, и все прекрасно работает. В моей программе есть еще 2 формы, без имени, но в таксбаре они видны. И в списке форм они тоже есть.

Добавлено через 2 часа 21 минуту
Похоже, я поспешил с выводами.
Создаю форму следующей строкой:

vb.net
1
Dim myForm As New Form With {.Name = "myForm", .TopMost = True, .WindowState = FormWindowState.Normal, .StartPosition = FormStartPosition.Manual, .Visible = True, .FormBorderStyle = Windows.Forms.FormBorderStyle.None, .MinimizeBox = False, .MaximizeBox = False, .ShowInTaskbar = False, .BackColor = Color.Yellow}
Ее нет в Application.OpenForms.

Добавлено через 7 минут
Разобрался. Почему-то весь этот набор свойств конфликтует с .Visible = True. Убрал - форма появилась.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.12.2016, 15:30
Привет! Вот еще темы с ответами:

не открывается созданная форма=( - Delphi
Пишу небольшую программку на диплом, в ней много разных форм. обычно открываю их через view form - выбираю нужную мне форму кликаю по ней -...

Созданная форма криво открывается - JavaScript
Как увеличить созданную формулу, создал кнопки, эдиты все есть, но не отображается из-за размера формы.

Динамически созданная форма не функционирует - jQuery
Динамически через AJAX создается вот такой вот div: <div class="link_group" id="'.$row.'"><a class="show_popup" id="'.$row.'"...

.NET 4.x Созданная форма не возвращает(?) Handle - C#
Доброго времени суток, господа программисты, будьте так любезны :) Суть: Попытки открытия другого приложения внутри windows формы(1...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru