Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поиск по Названию объекта / 11 сообщений из 11, страница 1 из 1
24.03.2016, 12:55
    #39199578
Karlus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
Решил сделать функцию по созданию объектов в проекте.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
 Sub Create_Label(ByVal FormName As String, ByVal ObjName As String, ByVal LabelName As String, ByVal PosX As Integer, ByVal PosY As Integer, ByVal SizeX As Integer, ByVal SizeY As Integer)
        Dim Form_To As Form = Application.OpenForms.Item(FormName)
        Dim LabelNew As New Label
        LabelNew.Name = LabelName
        LabelNew.Location = New Point(PosX, PosY)
        LabelNew.Size = New Size(SizeX, SizeY)
        If ObjName <> "" Then
            Dim Obj As Object = Form_To.Controls(ObjName)
            Obj.controls.add(LabelNew)
        Else
            Form_To.Controls.Add(LabelNew)
        End If

    End Sub


Форма, куда создать объект - FormName
Проблема в том что объект, на котором надо создать LAbel может находиться не на самой форме. Например на форме есть TabControl, а на нем есть TabPage2, вот надо создать на нем Label. Как исправить код, чтобы он искал объект во всех Controls формы?

Модератор: Тема перенесена из форума "Visual Basic".
...
Рейтинг: 0 / 0
24.03.2016, 13:07
    #39199599
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
мне кажется, вы делайте глупость, делая такое. Стоит остановится и поискать другой путь
...
Рейтинг: 0 / 0
24.03.2016, 13:55
    #39199701
Karlus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
Roman Mejtesмне кажется, вы делайте глупость, делая такое. Стоит остановится и поискать другой путь
А какой путь поискать? Подскажите, в какую сторону смотреть?
Дело в том что весь проект динамически троится. Я решил уйти от повторения описания свойств объекта, убрав в отдельные процедуры их. Тем самым сократил код на 40%. Может и глупость, конечно...
Что посоветуете?
...
Рейтинг: 0 / 0
24.03.2016, 14:35
    #39199773
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
Динамическое построение форм для Winforms чревато множеством подводных камней, мысль не моя, но неоднократно ее встречал.
KarlusЯ решил уйти от повторения описания свойств объектаНу так и надо выделить в отдельные процедуры описания свойств, а не построение самих форм.

Может вам больше WPF подойдет? Там и динамику просто строить, и без динамики гораздо проще можно обходиться.
...
Рейтинг: 0 / 0
24.03.2016, 15:14
    #39199830
Karlus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
Переписывать проект под WPF очень накладно. Уж больно он большой.
А так вроде все подводные камни, при динамическом построении формы, обошел. Проект работает уже несколько лет и без проблем.
Может кто посоветует как можно данную проблему решить минимум кода?
...
Рейтинг: 0 / 0
24.03.2016, 15:40
    #39199862
ЕвгенийВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
KarlusМожет кто посоветует как можно данную проблему решить минимум кода?
Мы в университетах не обучалися, рекурсиев не знам?
...
Рейтинг: 0 / 0
24.03.2016, 15:54
    #39199873
Karlus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
ЕвгенийВМы в университетах не обучалися, рекурсиев не знам?
Вот-вот. Университет давно был, тога еще такого слова не знали)
Чот не соображу как его тут применить? Можно чуть поподробней?
...
Рейтинг: 0 / 0
24.03.2016, 16:00
    #39199886
ЕвгенийВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
KarlusЕвгенийВМы в университетах не обучалися, рекурсиев не знам?
Вот-вот. Университет давно был, тога еще такого слова не знали)
Чот не соображу как его тут применить? Можно чуть поподробней?

Давай я поищу за тебя в гугле .
...
Рейтинг: 0 / 0
24.03.2016, 16:15
    #39199905
Karlus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
ЕвгенийВ Давай я поищу за тебя в гугле .
Спасибо тебе, добрый человек. Я чот вообще не в ту сторону думать начал, как прочитал про рекурсию.
...
Рейтинг: 0 / 0
25.03.2016, 12:24
    #39200478
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
WPF действительно для этого подходит значительно лучше.
Возможность динамической загрузки любого части визуального дерева, использование шаблонов и т.д.
Создать динамический интерфейс в WPF пустяковое дело в WPF, по сравнению с WF.

Как я понимаю, ваша текущая задача заключается в том, чтоб обойти рекурсивно визуальное дерево формы WF, найти заданный объект и применить к нему то, что вы хотите.
...
Рейтинг: 0 / 0
25.03.2016, 13:49
    #39200577
ЕвгенийВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по Названию объекта
Roman Mejtes
Как я понимаю, ваша текущая задача заключается в том, чтоб обойти рекурсивно визуальное дерево формы WF, найти заданный объект и применить к нему то, что вы хотите.
Если по каким то причинам стандартная рекурсия не подойдет, можно воспользоваться этим велосипедом .
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поиск по Названию объекта / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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