You can set Visibility="Hidden" for the EmployeeId and DepartmetId columns. I will show you a sample of this.
The code for my MainWindow.xaml:
<StackPanel>
<DataGrid x:Name="dataGrid" ItemsSource="{Binding }" AutoGenerateColumns="False" SelectionMode="Extended" SelectionUnit="FullRow" SelectedCellsChanged="dataGrid_SelectedCellsChanged">
<DataGrid.Columns>
<DataGridTextColumn Visibility="Hidden" Header="DepartmetId" Width="80" Binding="{Binding DepartmetId}"/>
<DataGridTextColumn Visibility="Hidden" Header="EmployeeId" Width="80" Binding="{Binding EmployeeId}"/>
<DataGridTextColumn Header="Name" Width="80" Binding="{Binding Name}"/>
<DataGridTextColumn Header="Address" Width="50" Binding="{Binding Address}" />
<DataGridHyperlinkColumn Header="Email" Width="150" Binding="{Binding Email}"/>
</DataGrid.Columns>
</DataGrid>
<TextBlock>selected Items</TextBlock>
<TextBlock Width="600" Height="200" Name="myTxt" TextWrapping="Wrap" VerticalAlignment="Bottom" HorizontalAlignment="Left"> </TextBlock>
</StackPanel>
The code for MainWindow.xaml.cs:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
ObservableCollection<Member> memberData = new ObservableCollection<Member>()
{
new Member(){DepartmetId = "Dp01",EmployeeId = "EP0011" ,Name = "Joe1",Address = "Street 1",Email = new Uri("mailto:Joe1@school.com")},
new Member(){DepartmetId = "Dp02",EmployeeId = "EP0012" ,Name = "Joe2",Address = "Street 2",Email = new Uri("mailto:Joe2@school.com")},
new Member(){DepartmetId = "Dp03",EmployeeId = "EP0013" ,Name = "Joe3",Address = "Street 3",Email = new Uri("mailto:Joe3@school.com")},
new Member(){DepartmetId = "Dp04",EmployeeId = "EP0014" ,Name = "Joe4",Address = "Street 4",Email = new Uri("mailto:Joe4@school.com")}
};
dataGrid.DataContext = memberData;
}
private void dataGrid_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e)
{
string str = "";
if (dataGrid.SelectedItems.Count > 0)
{
Member member = new Member();
foreach (var obj in dataGrid.SelectedItems)
{
member = obj as Member;
str += "DepartmetId : " + member.DepartmetId + " EmployeeId:" + member.EmployeeId + " Name:" + member.Name + " Address:" + member.Address + " Email:" + member.Email + "\n";
}
}
else
{
}
myTxt.Text = str;
}
}
public class Member
{
public string EmployeeId { get; set; }
public string DepartmetId { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public Uri Email { get; set; }
}
The picture of testing: