Как вернуть индекс столбца элемента в WPF Datagrid, когда я нажимаю на ячейку Я использую Visual Studio 2010/VB.Net(WPF Datagrid) Как определить индекс столбца элемента
ответ
DataGridCells
не имеет события Click, у них есть событие Selected
, но обычно он запускается для каждой ячейки в строке, когда вы нажимаете на ячейку. GotFocus
может быть лучшим выбором.
например.
<DataGrid ItemsSource="{Binding Data}">
<DataGrid.CellStyle>
<Style TargetType="{x:Type DataGridCell}">
<EventSetter Event="GotFocus" Handler="CellClick"/>
</Style>
</DataGrid.CellStyle>
</DataGrid>
и:
void CellClick(object sender, RoutedEventArgs e)
{
DataGridCell cell = sender as DataGridCell;
MessageBox.Show(cell.Column.DisplayIndex.ToString());
}
DataGridCell.Column.DisplayIndex
, кажется, возвращает соответствующий индекс, если это как-то не достаточно, то вы можете использовать DataGrid.Columns.IndexOf(DataGridCell.Column)
.
каждого тело говорит об этом решении
Int32 columnIndex = dataGridScannedFiles.SelectedCells[0].Column.DisplayIndex;
и да, это работает, но никто не говорит, что мы должны установить индекс отображения первым сюда каждый столбец, могут быть спокойно очевидно для специалистов, чтобы получить это, но для новичков это незнакомое дело
Есть два способа установить его: -
1) Вы можете установить его в XAML части ..
<DataGridTextColumn Header="Serial No." Width="60" IsReadOnly="True" Binding="{Binding Path=Sno}" DisplayIndex="1"></DataGridTextColumn>
я не знаю, как это сделать для пользовательских столбцов, как
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox x:Name="ChkItem" IsChecked="{Binding Path=Sno}"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
поэтому я предпочел другой путь
2) создали функцию
private void SetDisplayIndexforGridViewColumns()
{
Int32 ColumnCount = dt.Columns.Count;
for (int i = 0; i < ColumnCount; i++)
{
dataGridScannedFiles.Columns[i].DisplayIndex = i;
}
}
dt
моя таблица данных
и присваиваю ему индексные индексы
Теперь, если вы используете
Int32 columnIndex = dataGridScannedFiles.SelectedCells[0].Column.DisplayIndex;
тогда Вы наверняка получить индекс
Вы можете использовать ниже код непосредственно, чтобы получить выбранные ячейки столбца индекса.
int index = datagrid.SelectedCells[0].Column.DisplayIndex;
Вы попытались использовать это на мероприятии, чтобы указать индекс столбца?
int columnIndex = dataGrid.CurrentColumn.DisplayIndex;
Я использую этот код в MouseDoubleClick Event или PreviewKeyUp и отлично работает.
это единственное, что сработало для меня – Erez
- 1. WPF DataGrid: как определить текущий индекс строки?
- 2. wpf индекс столбца DataGrid не сохраняется
- 3. Определить тип столбца datagrid
- 4. WPF как сделать ширину столбца datagrid для обнаружения наибольшего элемента?
- 5. Как связать свойство width столбца Datagrid WPF?
- 6. C# WPF DataGrid изменить индекс столбца по положению заголовка
- 7. Как сохранить индекс столбца WPat datagrid?
- 8. Как получить индекс строки WPF Datagrid?
- 9. WPF Пользовательского заголовка столбца DataGrid
- 10. Проверка правильности столбца DataGrid (WPF)
- 11. WPF Datagrid Ширина столбца CodeBehind
- 12. wpf datagrid значение столбца заголовка столбца фильтра
- 13. Запретить изменение столбца Datagrid WPF
- 14. WPF: Как заблокировать заголовок столбца в datagrid
- 15. Как установить положение столбца в datagrid wpf
- 16. Как скрыть заголовок столбца в WPF DataGrid?
- 17. WPF делится настройкой столбца DataGrid (шаблон? Style?)
- 18. Определить индекс столбца в Excel
- 19. Определить индекс для разреженного столбца
- 20. Определить индекс элемента ng-repeat
- 21. неправильный индекс столбца флажка в datagrid
- 22. Как получить имя столбца DataGrid при щелчке заголовка, WPF
- 23. Получить выбранный индекс строки или индекс столбца Datagrid
- 24. WPF DataGrid ContextMenu (s)
- 25. Wpf DataGrid заголовок столбца в виде таблицы
- 26. WPF-Как получить выбранный индекс строки в datagrid?
- 27. WPF DataGrid - получить элементы из столбца
- 28. Изменение типа автогенерированного столбца в WPF datagrid
- 29. WPF C# Получить общую сумму столбца DataGrid
- 30. WPF: добавление столбца кнопки в Datagrid
Спасибо, друг ... –