-->

Wednesday, July 29, 2015

Delete DataGrid row from DataGrid using entity framework(EDMX file) in WPF

Delete DataGrid row from DataGrid using entity framework(EDMX file) in WPF

Before deleting the data from the dataGrid, first to load the DataGrid using Edmx file. This is done in previous article. In this article we have new column that is DataGridTemplateColumn , in which we have cell template. When we click on button then row is deleted from DataGrid. Before deleting data from DataGrid , access emp_id from selected row .


<Window x:Class="SplashSCreen.bindgridpanel"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:SplashSCreen"
        mc:Ignorable="d"
        Title="bindgridpanel" Height="300" Width="300">
    <Grid>
        <DataGrid CanUserDeleteRows="True" AutoGenerateColumns="False" ColumnWidth="*" x:Name="dataGrid" HorizontalAlignment="Left" Margin="54,56,0,0" VerticalAlignment="Top" Height="178" Width="173">
            <DataGrid.Columns>
                <DataGridTextColumn Binding="{Binding Emp_Id}" Header="Emp_Id" />

                <DataGridTextColumn Binding="{Binding Emp_Name}" Header="Emp_Name" />
                <DataGridTemplateColumn>
                    <DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <Button  Content="Delete" x:Name="dlt_button" Click="dlt_button_Click"></Button>
                         
                         
                        </DataTemplate>
                    </DataGridTemplateColumn.CellTemplate>
                </DataGridTemplateColumn>
            </DataGrid.Columns>
     
     
        </DataGrid>

    </Grid>
</Window>


Codebehind model

using System.Linq;
using System.Windows;

namespace SplashSCreen
{
    /// <summary>
    /// Interaction logic for bindgridpanel.xaml
    /// </summary>
    public partial class bindgridpanel : Window
    {
        TutorialEntities TE = new TutorialEntities();
        public bindgridpanel()
        {
            InitializeComponent();
            loadgrid();
        }

        private void loadgrid()
        {
           
            var data = from d in TE.emps select d;
            dataGrid.ItemsSource = data.ToList();
        }

        private void dlt_button_Click(object sender, RoutedEventArgs e)
        {
            int empid = (dataGrid.SelectedItem as emp).Emp_Id;
            emp employee = (from r in TE.emps where r.Emp_Id == empid select r).SingleOrDefault();
            TE.emps.Remove(employee);
            TE.SaveChanges();
            dataGrid.ItemsSource = TE.emps.ToList();
     

        }
    }
}



Code Generate the following output

Delete DataGrid row from DataGrid using entity framework(EDMX file) in WPF


Read other related articles

Also read other articles

© Copyright 2013 Computer Programming | All Right Reserved