这是我的代码:
<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"时,如何在下一个单元格中进入编辑模式,而不是只关注下一个单元?
要做到这一点,您需要对CellStyle进行一些修改,并将事件操作为BeginEdit();
下面是一些关于如何做到这一点的好例子,我已经用过了,效果很好。
- http://www.codeproject.com/Articles/50573/An-attempt-to-make-the-Silverlight-DataGrid-similahttp://www.codeproject.com/Tips/300003/Focus-CellEditTemplate-on-selection-of-Silverlight
这些示例包含了您需要的所有代码。你只需要修改一下就可以适应你的软件了。
希望它能帮助
使用方法BeginEdit()
。此信息的链接在这里。
这样的东西会起作用:
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提示和技巧上找到一些使用,也可以编辑