C# 数据网格删除行
在您从datagrid中删除一行之后,它是否可以链接到命令或事件,以便我也可以将其从SQL中抛出 现在我有这个网格。我可以通过I:Interaction.Triggers编辑它 删除有类似的功能吗C# 数据网格删除行,c#,xaml,datagrid,C#,Xaml,Datagrid,在您从datagrid中删除一行之后,它是否可以链接到命令或事件,以便我也可以将其从SQL中抛出 现在我有这个网格。我可以通过I:Interaction.Triggers编辑它 删除有类似的功能吗 XAML: <DataGrid ItemsSource="{Binding Contactpersons}" AutoGenerateColumns="False" Grid.Column="1" Margin="35,99,8,10" Grid.Row="5" Grid.ColumnS
XAML:
<DataGrid ItemsSource="{Binding Contactpersons}" AutoGenerateColumns="False" Grid.Column="1" Margin="35,99,8,10" Grid.Row="5" Grid.ColumnSpan="3">
<i:Interaction.Triggers>
<i:EventTrigger EventName="SelectionChanged">
<cmd:EventToCommand Command="{Binding EditCommand}" PassEventArgsToCommand="True"/>
</i:EventTrigger>
</i:Interaction.Triggers>
<DataGrid.Columns>
<DataGridTextColumn Header="Naam" Binding="{Binding Name}"/>
<DataGridTextColumn Header="Bedrijf" Binding="{Binding Company}" />
<DataGridTextColumn Header="Functie" Binding="{Binding JobRole/Name}"/>
<DataGridTextColumn Header="Stad" Binding="{Binding City}" />
<DataGridTextColumn Header="E-mail" Binding="{Binding Email}" />
<DataGridTextColumn Header="Telefoon" Binding="{Binding Phone}" />
<DataGridTextColumn Header="GSM" Binding="{Binding Cellphone}" />
</DataGrid.Columns>
</DataGrid>
C#:
public ICommand EditCommand
{
get { return new RelayCommand<SelectionChangedEventArgs>(Edit); }
}
private void Edit(SelectionChangedEventArgs e)
{
if (e.RemovedItems.Count > 0)
{
Contactperson b = e.RemovedItems[0] as Contactperson;
Contactperson.EditPerson(b);
}
}
XAML:
C#:
公共ICommand edit命令
{
获取{返回新的RelayCommand(编辑);}
}
私人作废编辑(选择ChangedEventArgs e)
{
如果(e.RemovedItems.Count>0)
{
联系人b=e.作为联系人删除项目[0];
联系人。编辑人员(b);
}
}
那么,对于delete而不是edit,是否有类似的方法?在datagrid中,有一个名为unloadinggrow的事件
private void dgv_UnloadingRow(object sender, System.Windows.Controls.DataGridRowEventArgs e)
{
// Add your deletion code from SQL.
}
更新:-
请检查此链接U可以添加一个带有事件的按钮,如果我理解正确,您可以在数据库中编写删除代码?或者您需要在从datagrid删除行后,它应该完成此工作?我将有一个带有“在此处键入人员姓名”的文本框,其中的人员姓名将从sql中删除。我使用的是MVVM模式。感谢您的回复。但我使用的是mvvm模型。所以我宁愿不在代码背后工作,我不擅长MVVM。不过我想你可以在你的viewModel中创建一个事件,并且可以嵌入到DataGrid事件中??