I want to show Components in a tabs , so first of all create few components. In this project we have three components, First View Component public class AllViewComponent : ViewComponent { private readonly UserManager<ApplicationUser> _userManager; public AllViewComponent(UserManager<ApplicationUser> userManager) { _userManager = userManager; } public async Task<IViewComponentResult> InvokeAsync() { List<StudentViewModel> allUsers = new List<StudentViewModel>(); var items = await _userManager.Users.ToListAsync(); foreach (var item in items) { allUsers.Add(new StudentViewModel {Id=item.Id, EnrollmentNo = item.EnrollmentNo, FatherName = item.FatherName, Name = item.Name, Age = item.Age, Birthdate = item.Birthdate, Address = item.Address, Gender = item.Gender, Email = item.Email }); }
In this article we will learn how to bind DataGrid using EDMX file in wpf. I already bind dataGrid in window form using EDMX. In both article, i notice that only one difference between both that is xaml file. Lets to start to design this in wpf:
<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 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" />
</DataGrid.Columns>
</DataGrid>
</Grid>
</Window>
Above mentioned code define the binding structure. I have one dataGrid control in the window. x:Name is a property of each control which is define the class instance , through which we can access other property of control in business logic. I have two Text column in dataGrid which take two attribute first one is Binding and another one is Header. Header represent the DataGrid column name and binding define the actual name of database table column's name.
Note : Before going to code behind must to add EDMX file in the project.
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();
}
}
}
After add the edmx file in the project , you can access the public property of context class (here i have 'emps'). Through which we can apply operation on dataGrid.
<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 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" />
</DataGrid.Columns>
</DataGrid>
</Grid>
</Window>
Above mentioned code define the binding structure. I have one dataGrid control in the window. x:Name is a property of each control which is define the class instance , through which we can access other property of control in business logic. I have two Text column in dataGrid which take two attribute first one is Binding and another one is Header. Header represent the DataGrid column name and binding define the actual name of database table column's name.
Note : Before going to code behind must to add EDMX file in the project.
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();
}
}
}
Code generate the following output
After add the edmx file in the project , you can access the public property of context class (here i have 'emps'). Through which we can apply operation on dataGrid.
Comments
Post a Comment