Просто предположение, но я думаю, что это звучит разумным.
поле комбинированного списка Assume использует "ListCollectionView" (lcv как его экземпляр) как его набор элементов, которым это должно быть. Если Вы - программист, что Вы собираетесь сделать?
я буду respons и на Клавиатуру и на Мышь.
, После того как я получаю Ввод с клавиатуры, я использую
lcv.MoveCurrentToNext();
или
lcv.MoveCurrentToPrevious();
Так, верная клавиатура работает хорошо.
Затем я работаю над respons исходными данными Мыши. И это прибывает проблема.
я хочу послушать событие 'MouseClick' своего объекта. Но вероятно, мой Объект не делает сгенерированный, это - просто заполнитель. Таким образом, когда пользователь нажимает на этого заполнителя, я ничего не получаю.
, Если я получаю событие успешно, что является следующим. Я вызову
lcv. MoveCurrentTo (selectedItem);
"selectedItem", который был бы пустым, не является приемлемым параметром здесь, я думаю.
Так или иначе, это просто предполагает. У меня нет времени для отладки в него, хотя я могу. У меня есть набор дефектов для фиксации.Удачи. :)
There isn't a built-in method for this, but you can easily do it by looking in the Children collection:
myGrid.Children
.Cast<UIElement>()
.First(e => Grid.GetRow(e) == row && Grid.GetColumn(e) == column);
Свойство Children объекта сетки предоставит вам коллекцию всех дочерних элементов сетки (из класса Panel).
Что касается получения координат в сетке, посмотрите в статических методах класса Grid (GetRow () и GetColumn ()).
Надеюсь, что это направит вас в правильном направлении.
Этот ответ поможет вам
int rowIndex = Grid.GetRow(myButton);
RowDefinition rowDef = myGrid.RowDefinitions[rowIndex];