перенос контролов

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

самообучающийся
Начинающий
Начинающий
 
Сообщения: 22
Зарегистрирован: 20.08.2008 (Ср) 12:13

перенос контролов

Сообщение самообучающийся » 28.08.2008 (Чт) 14:47

Visual Studio 2008
Народ подскажите, столкнулся с такой проблеммой.
Создавал контролы в одной закладке, потом решил добавить новую закладку и часть контролов перенести в неё, выделяю необходимые контролы, вырезаю и в новой закладке вставляю. При этом Button19_Click меняется на Button19_Click_1 и приходится поновой перезаписывать все коды в евентах .... у меня таких контролов около сотни :(
Не подскажите как надо правильно переносить контролы что бы сохранялись их названия ?

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: перенос контролов

Сообщение Viper » 28.08.2008 (Чт) 15:36

Глюк не подтверждаю. В тестовом проекте все нормально вырезалось и вставилось.
Весь мир матрица, а мы в нем потоки байтов!

самообучающийся
Начинающий
Начинающий
 
Сообщения: 22
Зарегистрирован: 20.08.2008 (Ср) 12:13

Re: перенос контролов

Сообщение самообучающийся » 28.08.2008 (Чт) 16:09

странно ...
у меня WindowsForm на ней TabControl , на первой закладке куча контролов , кнопки,текстбоксы и прочее. Контролы объедененны в группы с помощью GroupBox.
Я создаю новую закладку , вырезаю из первой закладки GroupBox1 , в нем листбокс, текстбоксы и кнопки, и вставляю этот GroupBox1 во вторую закладку (новую). После этого делаю двойной клик на кнопке и в окне кода мне выдаёт Private Sub Button19_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button19.Click вместо Private Sub Button19_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) как было до переноса контрола . При запуске проекта Button19 не выполняет те функции которые были указанны до переноса ...

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Re: перенос контролов

Сообщение Williams » 28.08.2008 (Чт) 16:24

У меня аналогичный глюк был.. После вырезания в буфер обмена и вставки от процедур контролов отключались обработчики (к примеру Handles Button1.Click отрезалось, надо было заново присоединять). К примеру, если вырезать из одного контейнера и вставить в другой. Однако при Drag-Drop таким же образом все происходит нормально. Особенность характерна для VS 2008.
И вы думаете, что вас оставят в живых после прочтения этого поста?

самообучающийся
Начинающий
Начинающий
 
Сообщения: 22
Зарегистрирован: 20.08.2008 (Ср) 12:13

Re: перенос контролов

Сообщение самообучающийся » 28.08.2008 (Чт) 20:30

ок , попробую перетаскивать

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Re: перенос контролов

Сообщение Sebas » 29.08.2008 (Пт) 9:36

Всё правильно! Если обработчики не пустые!

1. при вырезании контрола студия отключает хендлер от процедуры
2. процедура остаётся!
3 При создании нового обработчика, естейственно! Студия создаёт новый .._1
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Re: перенос контролов

Сообщение Williams » 29.08.2008 (Пт) 13:04

Sebas писал(а):Всё правильно! Если обработчики не пустые!

1. при вырезании контрола студия отключает хендлер от процедуры
2. процедура остаётся!
3 При создании нового обработчика, естейственно! Студия создаёт новый .._1


Да да, именно так, но мне кажется она должна запоминать и восстанавливать обработчики при Cut-Paste, т.к. пользователь ожидает такого поведения. Я например вырезал из GroupBox'а и вставил прямо на форму. И все ручками приходится править. Ведь не всегда же удобно пользоваться перетаскиванием.
И вы думаете, что вас оставят в живых после прочтения этого поста?

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Re: перенос контролов

Сообщение Sebas » 29.08.2008 (Пт) 15:16

Williams писал(а):
Sebas писал(а):Всё правильно! Если обработчики не пустые!

1. при вырезании контрола студия отключает хендлер от процедуры
2. процедура остаётся!
3 При создании нового обработчика, естейственно! Студия создаёт новый .._1


Да да, именно так, но мне кажется она должна запоминать и восстанавливать обработчики при Cut-Paste, т.к. пользователь ожидает такого поведения. Я например вырезал из GroupBox'а и вставил прямо на форму. И все ручками приходится править. Ведь не всегда же удобно пользоваться перетаскиванием.


Вы мыслите шестым ВБ))))))))))))))))))))
Процедура может хандлить по несколько событий от разных контролов - тогда как?
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Re: перенос контролов

Сообщение Williams » 29.08.2008 (Пт) 17:11

Sebas писал(а):
Williams писал(а):
Sebas писал(а):Всё правильно! Если обработчики не пустые!

1. при вырезании контрола студия отключает хендлер от процедуры
2. процедура остаётся!
3 При создании нового обработчика, естейственно! Студия создаёт новый .._1


Да да, именно так, но мне кажется она должна запоминать и восстанавливать обработчики при Cut-Paste, т.к. пользователь ожидает такого поведения. Я например вырезал из GroupBox'а и вставил прямо на форму. И все ручками приходится править. Ведь не всегда же удобно пользоваться перетаскиванием.


Вы мыслите шестым ВБ))))))))))))))))))))
Процедура может хандлить по несколько событий от разных контролов - тогда как?



Хорошо.. Допустим такой расклад:

На форме существуют контролы ButtonA и ButtonB, а также их общий обработчик - Sub MyButton_Click Handles ButtonA.Click, ButtonB.Click.
Я вырезаю ButtonB с формы. Visual Studio помещает вырезанный контрол в буфер обмена, а также информацию о том, что его .Click обрабатывался процедурой MyButton_Click. Затем удаляет его с формы и снимает с Handles .., ButtonB.Click.
Когда же я снова вставляю этот контрол на форму, к процедуре обратно присоединяется .. Handles ... ButtonB.Click. Если такой процедуры уже нет, то ничего не происходит. Не вижу никаких препятствий к осуществлению такого подхода.
И вы думаете, что вас оставят в живых после прочтения этого поста?


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot и гости: 85

    TopList