Datagrid的XAML代碼:問題在WPF的DataGrid編輯,分組使能
<controls:DataGrid Name="dataGrid" AutoGenerateColumns="False" >
<controls:DataGrid.GroupStyle>
<GroupStyle>
<GroupStyle.HeaderTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Path=Name}" />
</StackPanel>
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
</controls:DataGrid.GroupStyle>
<controls:DataGrid.Columns>
<controls:DataGridTextColumn Header="Student ID" Width="90*" MinWidth="120" Binding="{Binding StudentId}"/>
<controls:DataGridTextColumn Header="Student Name" Width="90*" MinWidth="120" Binding="{Binding Name}"/>
<controls:DataGridTextColumn Header="Score" Width="100*" MinWidth="150" Binding="{Binding Score}"/>
</controls:DataGrid.Columns>
</controls:DataGrid>
這裏後面的代碼:
void LoadDatagrid()
{
List<Student> _studentList = new List<Student>();
_studentList.Add(new Student()
{
StudentId = 1,
Name = "Paul Henriot",
Department = "IT",
Score = 540
});
_studentList.Add(new Student()
{
StudentId = 2,
Name = "John Doe",
Department = "IT",
Score = 620
});
_studentList.Add(new Student()
{
StudentId = 3,
Name = "Aria Cruz",
Department = "ME",
Score = 840
});
_studentList.Add(new Student()
{
StudentId = 4,
Name = "Yoshi Latimer",
Department = "ME",
Score = 450
});
CollectionViewSource viewSource = new CollectionViewSource();
viewSource.GroupDescriptions.Add(new PropertyGroupDescription("Department"));
viewSource.Source = _studentList; ;
dataGrid.ItemsSource = viewSource.View;
}
public class Student
{
public int StudentId{ get; set; }
public string Name { get; set; }
public string Department { get; set; }
public int Score { get; set; }
}
當我試圖編輯的第一任一個分數或名稱部門,編輯後,行跳下來。
需要幫助。
你是什麼意思「行跳下來」?你的意思是選擇移動到下一行。我試過你的代碼,發現一切正常 – biju 2011-05-19 05:43:51
行本身移動到下一行(最後一行)。 – Hukam 2011-05-19 05:52:38
@biju你有沒有在.Net 3.5中試過? – Hukam 2011-05-19 06:49:44