Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как получить свойство Text нода, в событии, текст Нода 
V
    Опции темы
Compositum
Дата 19.1.2008, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Senior developer
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 430
Регистрация: 6.1.2008
Где: Санкт-Петербург

Репутация: 0
Всего: 1



тривью отображает иерархию каталогов.
юзер нажал на кнопку, которая в тривью добавляет новый нод и сразу переходит в режим редактирования текста нода. юзер должен ввести имя. после этого прога проверяет, чтобы в том месте не было каталога с таким же именем. если нет - то добавляет каталог и сохраняет нод под заданным именем, а если есть - выдает сообщение, мол такой каталог уже есть и возвращаясь в режим редактирования наименования нода  выделяет наименование нода, ожидая, что юзер даст др. имя.
Но... когда я лезу в событие "после_обновления_нода", то не знаю как считать имя, заданное юзером. если читаю свойство Text, то получаю значение которое было ДО переименования нода... Как получить то значение, которое задает юзер (т.е. то значение, которое нужно проверить )?
Код

private void treeViewCatalogs_AfterLabelEdit(object sender, NodeLabelEditEventArgs e)
        {
            // получаю список имеющихся каталогов
            string[] innerDir = Directory.GetDirectories(Environment.CurrentDirectory + "\\" + basicNodeName);
            // проверяю, чтобы каталогов с таким именем больше не было
            foreach (string i in innerDir)
            {
                DirectoryInfo nameDir=new DirectoryInfo(i);
                if (nameDir.Name == e.Node.Text)
                {
                    // если такой каталог уже существует - сообщаю об этом и возвращаю пользователя в режим
                    // редактирования наименования Nod'a и прерываю выполнение кода
                    MessageBox.Show("Каталог с таким именем уже существует", "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                    treeViewCatalogs.SelectedNode.BeginEdit();
                    return;
                }
            }
            // если такого каталога нет - создаю его
            DirectoryInfo curDir = new DirectoryInfo(Environment.CurrentDirectory + "\\" + basicNodeName);
            curDir.CreateSubdirectory(e.Node.Text);
            e.Node.Tag = Environment.CurrentDirectory + "\\" + basicNodeName + "\\" + e.Node.Text;
        }


Добавлено через 4 минуты
нашел. оказывается я не там искал... нужно смотреть e.Label
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0370 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.