首页 > 解决方案 > 当 DataGridTextColumn 在 WPF 中处于编辑模式(非 SelectedIndex)时,是否可以获取其 SelectionIndex?

问题描述

我将格式化的文本数组粘贴到数据网格中,它工作正常。但是,当数据网格处于编辑模式时,我想将剪贴板数据准确粘贴到光标点所在的位置。默认情况下,数据网格可以粘贴任何选择点。

在WPF中处于编辑模式(未选择索引)时是否可以获得DataGridTextColumn的SelectionIndex?

DataGridCellInfo cell1 = data_grid.SelectedCells[datagridColumn];
string text = Convert.ToString((cell1.Item as ChoiceList).Choice);
TextBox textBox = new TextBox();
textBox.Text = text+ data[0,0];
int ind = ((cell1.Item as ChoiceList).Id) - 1;
ChoiceListView[ind].Choice = textBox.Text;

标签: c#.netwpfwinforms

解决方案


我仍然不确定我是否完全理解,但我认为您正在寻找这样的东西:

//Assuming datagridColumn is the index of the column you want

ChoiceList item = (ChoiceList)data_grid.SelectedItem;
if (item != null)
{
    DataGridRow row = (DataGridRow)dg.ItemContainerGenerator.ContainerFromItem(item);
    TextBox tb = (TextBox)data_grid.Columns[datagridColumn].GetCellContent(row);
    tb.SelectedText = (string)data[0, 0];
}

推荐阅读