У меня есть DataGrid
, связанный с коллекцией Appointment
объектов. В сетке показаны встречи на определенную неделю, с столбцами в виде дней и строк как раз, ergo каждая ячейка привязана к назначению.Как получить местоположение ячейки WPF DataGrid?
Когда пользователь нажимает на ячейку, я хочу показать небольшое окно с кратким описанием назначения этой ячейки. По сложным причинам я не могу настроить ячейку для отображения сводки, и, что более важно, я хочу, чтобы сводка выпадала и перекрывала ячейки ниже выбранной.
В моей команде, связанной с одним щелчком мыши, через какую-то магию я получаю DataGridCellInfo
для выбранной ячейки, но этот объект не предлагает никакого намека на какое-либо позиционирование, а только на некоторые измерения. Входной обязательные для двойного щелчка выглядит следующим образом:
<DataGrid.InputBindings>
<!--TODO Remove name 'TheGrid' and find parent DataGrid-->
<MouseBinding MouseAction="LeftDoubleClick" Command="{Binding ApptClickCommand}" CommandParameter="{Binding ElementName=TheGrid, Path=SelectedCells}" />
</DataGrid.InputBindings>
и код команды принимает параметр типа SelectedCellsCollection
, который содержит только один DataGridCellInfo
. У меня нет другой информации для работы в команде. Как бы то ни было, я обманываю себя настолько, чтобы быть настолько интимным с представлением внутри viewmodel, поэтому я хотел бы избегать выхода за борт и напрямую использовать события с кодом.
Какой «место» вы ищете? – mm8
@ mm8 Координаты экрана, так что, как я уже сказал, я хочу, чтобы «сводка выпадала и накладывала ячейки под выбранным». – ProfK
Вы видели мой ответ? – mm8