2012-11-22 28 views
5
private void ViewWinLoaded(object sender, RoutedEventArgs e) 
    { 
     var stud = from s in data.Students 
          select s; 
     Student[] st=stud.ToArray<Student>(); 
     datagrid.ItemsSource = st; 

    } 

mã trên là mã C# của tôi.làm cách nào tôi có thể chỉnh sửa dự phòng tên cột dữ liệu wpf trong studio trực quan 2012

<DataGrid x:Name="datagrid" HorizontalAlignment="Left" Height="232" VerticalAlignment="Top" Width="461"> 
     <DataGrid.Columns> 
      <DataGridTextColumn Binding="{Binding Path=StudentID}" ClipboardContentBinding="{x:Null}" Header="StudentID"/> 
      <DataGridTextColumn Binding="{Binding Path=FirstName}" ClipboardContentBinding="{x:Null}" Header="First Name"/> 
      <DataGridTextColumn Binding="{Binding Path=LastName}" ClipboardContentBinding="{x:Null}" Header="Last Name"/> 
      <DataGridTextColumn Binding="{Binding Path=Gender}" ClipboardContentBinding="{x:Null}" Header="Gender"/> 
      <DataGridTextColumn Binding="{Binding Path=GPA}" ClipboardContentBinding="{x:Null}" Header="GPA"/> 
     </DataGrid.Columns> 
    </DataGrid> 

điều tôi đang cố gắng đạt được là sử dụng tên cột của riêng mình, chứ không phải tên cột trong dB. Nhưng khi tôi chạy mã, nó sẽ hiển thị cột tùy chỉnh của tôi và tên cột từ db cùng một lúc (tên tầng)

+0

Tại sao 'stud.ToArray ();' ItemSource là IEnumerable. –

Trả lời

2

Ngăn DataGrid tạo cột bằng cách đặt thuộc tính AutoGenerateColumns thành false.

<DataGrid x:Name="datagrid" AutoGenerateColumns="False" 
HorizontalAlignment="Left" Height="232" VerticalAlignment="Top" Width="461"> 
+0

cảm ơn điều này hoạt động tốt! –

0

Một cách khác để đạt được kết quả này, bạn có thể đặt thành mọi thuộc tính công khai thuộc thuộc tính lớp học Sinh viên DisplayName.

Các vấn đề liên quan