Як отримати вибраний GridView індекс колонки

Я намагаюся отримати індексний номер стовпця Gridview із програми WPF. я можу отримати вказаний індекс рядка, але не вибраний індекс коломи

1

3 Відповіді

Якщо ви в змозі змінити керування GridView на DataGrid , спробуйте вказати нижче код, щоб отримати відображення індексу поточного стовпця DataGrid від коду за:

dataGrid.CurrentColumn.DisplayIndex

Цей властивість CurrentColumn.DisplayIndex DataGrid в основному отримує або встановлює порядок відображення стовпця відносно поточних стовпців. Він надає нульову позицію стовпця, як вона відображається у відповідному DataGridView, або -1, якщо група не знаходиться в елементі керування.

Сподіваємося, що інформація буде корисною для вас ..

З повагою

Дебас

0
додано
спасибі всім, але я знайшов інше рішення для цього. оскільки я взяв позицію миші і зміщення горизонтального відбитку, щоб знайти номер стовпця, використовуючи фактичну ширину колонки
додано Автор Bayo Alen, джерело

Ось як ми можемо отримати значення певної клітини

Object obj = GetCell(3).Content;
                     string cellContent = String.Empty;
                     if (obj != null)
                     {
                         if (obj is TextBox)
                             cellContent = ((TextBox)(obj)).Text;
                         else
                             cellContent = ((TextBlock)(obj)).Text;
                      }




private DataGridCell GetCell(int column)
    {
        DataGridRow rowContainer = GetRow();

        if (rowContainer != null)
        {
            DataGridCellsPresenter presenter = GetVisualChild(rowContainer);

           //Try to get the cell but it may possibly be virtualized.
            DataGridCell cell = (DataGridCell)presenter.ItemContainerGenerator.ContainerFromIndex(column);
            if (cell == null)
            {
               //Now try to bring into view and retreive the cell.
                customDataGrid.UCdataGridView.ScrollIntoView(rowContainer, customDataGrid.UCdataGridView.Columns[column]);
                cell = (DataGridCell)presenter.ItemContainerGenerator.ContainerFromIndex(column);
            }
            return cell;
        }
        return null;
    }

я сподіваюсь, це допоможе тобі ....

0
додано
спасибі всім, але я знайшов інше рішення для цього. оскільки я взяв позицію миші і зміщення горизонтального відбитку, щоб знайти номер стовпця, використовуючи фактичну ширину колонки.
додано Автор Bayo Alen, джерело
 protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
 {  
    string lbl_nam = (Label)GridView1.Rows[GridView1.SelectedIndex].FindControl("Label_nam");
    string nam = lbl_nam.Text;
  }
0
додано
var chat = new Chat();
var chat = new Chat();
642 учасників

Обсуждение вопросов по C# / .NET / .NET Core / .NET Standard / Azure Сообщества-организаторы: — @itkpi — @dncuug