C# ViewModel中的DataGridCell设置编辑模式

C# ViewModel中的DataGridCell设置编辑模式,c#,wpf,mvvm,datagrid,C#,Wpf,Mvvm,Datagrid,在我的应用程序中,我有一个带有数据网格的UserControl。数据网格中的一个单元格定义如下: <DataGridTemplateColumn Header="Alternative path" Width="Auto" MinWidth="60" SortMemberPath="OtherModulePath"> <DataGridTemplateColumn.CellTemplate> <DataTemplate>

在我的应用程序中,我有一个带有数据网格的
UserControl
数据网格中的一个单元格定义如下:

<DataGridTemplateColumn Header="Alternative path" Width="Auto" MinWidth="60" SortMemberPath="OtherModulePath">
    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding OtherModulePath}" Style="{StaticResource DataGridTextBlockStyle}"/>
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>
    <DataGridTemplateColumn.CellEditingTemplate>
        <DataTemplate>
            <TextBox Text="{Binding OtherModulePath, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Padding="4,1"/>
        </DataTemplate>
    </DataGridTemplateColumn.CellEditingTemplate>
    <DataGridTemplateColumn.CellStyle>
        <Style TargetType="{x:Type DataGridCell}" BasedOn="{StaticResource BaseDataGridCellStyle}">
            <Setter Property="AutomationProperties.Name" 
                    Value="{Binding OtherModulePath, 
                                    Converter={Converter:AutomationPropertiesNameFromEmptyToSpaceConverter},
                                    FallbackValue=' '}"/>
        </Style>
    </DataGridTemplateColumn.CellStyle>
</DataGridTemplateColumn>

如果我选择单元格并用鼠标左键再次单击,编辑-
文本框
将显示良好

数据网格
上方有一个
按钮
。单击此
按钮
我显示的
DataGridCell
应切换到编辑模式,以便OtherModulePath的
文本框
应可见

如何使用MVVM实现这一点


我知道如何使用代码隐藏,但我不知道如何重新开始数据绑定。

DataGrid有一个名为
BeginEditCommand
的命令,您可以将按钮的命令绑定到该命令,如下所示:

//suppose your grid has name of dg
<Button Command="{x:Static DataGrid.BeginEditCommand}"
        CommandTarget="{Binding ElementName=dg}">
   <!-- ... -->
</Button>
//假设您的电网名称为dg