主要目标:选择第一个数据网格中列出的学校,并在下一个数据网格中显示该学校的所有学生记录/详细信息。但是,由于 datagrid 是可编辑的并且要求提到:“在对象周围使用 Wrapper 类来获取数据,设置相同并保存。确保 wrapper 是可绑定的,以考虑对 datagrid 文本字段进行的更新。”
我有一个对象,它是一种数据访问对象,即 DO。
我的学校:我的学校DO。
mySchoolDO 是以下代码的 actionScript 类:
公开课 mySchoolDO
{
public var schoolName:String;
public var schoolLocation:String;
public var schoolStudents:ArrayCollection;
// Array of myStudentDO instances
}
上面有一个名为 schoolStudents 的学生数组集合,它访问 myStudentDO.as 类,如下所述。
我的学生:我的学生DO。
myStudentDO.as 是以下代码的 actionScript 类:
public class myStudentDO implements IExternalizable
{
[Bindable] public var studentID: String;
[Bindable] public var studentCourses: Array
[Bindable] public var studentPhone:Number;
[Bindable] public var studentGender:Boolean;
public function readExternal(input:IDataInput):void {
studentID = SerializationUtils.readNullableString(input);
studentCourses = SerializationUtils.readNullableString(input);
studentPhone = SerializationUtils.readStringList(input);
studentGender = SerializationUtils.readNullableString(input);
}
在我的主要 mxml 应用程序中。我执行以下操作:
1> 获取所有学校数组。实例化一个学校对象并获取学校数据。2> 使用学校对象访问所有学生数据并存储为对象数组。
private function availableSchools(schools:Array): void
{
mySchools=schools;
loadSchools();
}
private function loadSchools():void
{
for(var z:int =0; z
单击学校后,会触发一个 ItemClick 事件,该事件将获取学校,然后显示所有学校学生的数据。
private function itemClickEvent(event:ListEvent):void
{
_school = event.currentTarget.selectedItem;
showSchoolStudents(_school);
}
private function showSchoolStudents(school:mySchoolDO)
{
for(var b:int=0; b<(school.schoolStudents).length;b++)
{
schoolDatagridProvider.push(school.schoolStudents[b]);
}
dgOfSchool.dataProvider = schoolDatagridProvider;
dgOfSchool.invalidateList();
}
showSchoolStudents 将在数据网格上显示学生的所有详细信息。但是,我的数据网格是可编辑的。而且,我想在这个对象周围使用 WRAPPER CLASS 这样
a> 我可以检索studentsDO 中存在的单个值,即studentID、studentCourses、studentGender、studentPhone。
b> 我应该能够设置在可视数据网格中更新的值。
c> 最后保存所有数据并在提交点击提交。
请帮忙写代码。将不胜感激。
谢谢。