当我点击“Enter”时,如何在下一个单元格中进入编辑模式,而不是只关注下一个单元格?

时间:2013-12-11 22:47:10

标签: c# wpf

这是我的代码:

       <DataGridTemplateColumn  Header="xxx" Width="*" >
                <DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                        <TextBox IsReadOnly="{Binding VialPosition,Converter={StaticResource EditableCondition}}"        
                                 Background="{Binding ExtractionIDBackgroundColor, Converter={StaticResource ColorConvert}}" 
                                 TextAlignment="Center" Height="30" Width="375" 
                                 Text="{Binding ExtractionId, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
                    </DataTemplate>
                </DataGridTemplateColumn.CellTemplate>
            </DataGridTemplateColumn>

当我点击“Enter”时,如何在下一个单元格中进入编辑模式,而不是只关注下一个单元格?

3 个答案:

答案 0 :(得分:1)

要做这样的事情,你需要对你的CellStyle进行一些修改,并将事件操作为BeginEdit();

以下是一些关于如何做到这一点的好例子,我已经使用过它们并且效果非常好。

这些示例包含您需要的所有代码。您只需要进行一些修改即可适应您的软件。

希望有所帮助

答案 1 :(得分:0)

使用方法BeginEdit()。此信息的链接为HERE

答案 2 :(得分:0)

这样的事情会起作用:

private void dataGridView1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        e.Handled = true;
        DataGridViewCell cell = dataGridView1.Rows[0].Cells[0];
        dataGridView1.CurrentCell = cell;
        dataGridView1.BeginEdit(true);               
    }
}

您可能会在WPF tips and tricks编辑

上找到一些用途