Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > WPF, UWP, WinRT, XAML
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2012, 21:54   #1
coNsept
Форумчанин
 
Аватар для coNsept
 
Регистрация: 14.12.2009
Сообщений: 716
По умолчанию Проблема с выбором элементов в ListBox

Доброго времени суток уважаемые форумчане, собственно не могу понять в чем может заключаться следующая проблема...

Компонент: ListBox
SelectionMode: Extented

Вообщем при попытке выбрать один из элементов данного listbox/а выделяется первый элемент и все. Нажав на другие элементы, не происходит ничего что должно было быть.
Пробовал выбирать и с помощью: SelectionChanged и MouseDown -> if (LeftMouseDown is pressed) нивкакую...
Если SelectionMode: Single
Тогда элемент выбирается но предыдущие элементы так и остаются подсвеченными (То есть как будто зажата CTRL). Такой вариант мне не подходит...
Есть у меня еще один ListBox на форме с элементами кнопок, так вот, при SelectionChanged если попробовать отобразить куда-нить в текст бокс индекс элемента меняется только при нажатие правой кнопки, хотя на сколько мне известно это должно происходить при нажатии левой кнопки.

При SelectionMode: Single



При SelectionMode: Extended (Один элемент выбирается, при попытке нажать на другой выбора не происходит)


Последний раз редактировалось coNsept; 16.03.2012 в 22:00.
coNsept вне форума Ответить с цитированием
Старый 19.03.2012, 12:24   #2
coNsept
Форумчанин
 
Аватар для coNsept
 
Регистрация: 14.12.2009
Сообщений: 716
По умолчанию

Проблема решилась частично...
Вообщем если на ListBox тот что слева закинуть событие SelectionChanged тогда индексация идет правильная, но только в том случае если в ListBox добавляются только строковые данные, например:

Код:
  
int i = 0;

private void NewPlayList_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
 if (e.LeftButton == MouseButtonState.Pressed)
 {
   MenuLeft.Items.Add(i++.ToString());  
 }
}
Иначе если я пытаюсь добавить кнопки например так, почему-то индексация больше не работает, как будто не происходит клик даже...

Код:
  
private void NewPlayList_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
 if (e.LeftButton == MouseButtonState.Pressed)
 {
   Button ButtonPlayList = new Button();
   ButtonPlayList.Width = 165;
   ButtonPlayList.Height = 35;
   ButtonPlayList.Style = (Style)FindResource("ButtonStyle3");
   MenuLeft.Items.Add(ButtonPlayList);
 }
}
Здесь отображаю индекс элемента в блок текста

Код:
private void MenuLeft_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
 Debug.Text = e.AddedItems[0].ToString();
}
coNsept вне форума Ответить с цитированием
Старый 19.03.2012, 13:48   #3
coNsept
Форумчанин
 
Аватар для coNsept
 
Регистрация: 14.12.2009
Сообщений: 716
По умолчанию

Проблему понял но как решить не знаю. Как вообщем перечислять индекс кнопки в MyListBox. Фокус получает же кнопка а не сам элемент, как обойти проблемку?
coNsept вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
призвести сортирову выбором по неубыванию элементов ( Фортран) kuki1 Помощь студентам 2 30.06.2011 16:33
Проблема с выбором нужного элемента управления. kushnarenkoa Помощь студентам 1 17.12.2010 19:14
Проблема с выбором сервера Kernel_panic Компьютерное железо 0 29.01.2010 12:14
проблема с выбором значения ячейки ssh Общие вопросы .NET 0 17.01.2009 00:17
Перемещение элементов в ListBox kodov Общие вопросы Delphi 3 31.03.2007 11:44