常见代码编写规范(二)--详细数据的读与显示
2004年12月8日
2.详细数据的读与显示
    详细数据的读与显示是我们碰到的最多代码之一,这种代码分成二个阶段来完成:1.取到对应的对象,2.显示数据到界面上。显示数据的时候要好好组织,对于一个类聚合多个类时,每个类都要分成一个函数进行处理,每个处理函数要基本保证一条语句处理一个Porperty,对于需要转换的属性,使用一个函数进行转换。代码例子如下:
    1.取相应的对象
    private CPerson GetPerson()
   {
        Guid GuidPerson=new Guid(this.m_pGuid.Text);
        CPerson person=CPerson .Load(GuidPerson);
    }
  2.显示相应的对象
    显示Person
     private void ShowPerson()
  {
      CPerson person=GetPerson()
       if(person==null)  return;
 
       this.tb_name.Text=person.Name; 
       ///当通过一个置值语句不能完成任务,或需要进行条件判断时,使用函数
       SetGender(person.Gender);

       this.tb_old.DateValue=person.BornDate;
       ShowContactInfo(person.ContactInfo);
       ShowApplyRecord(person.ApplyRecord);
       this.tb_worktime.DateValue = person.StartWorkDate;      
  }

  private void SetGender(bool bGender)
  {
       if(bGender)
            this.rbMale.Checked = true;
       else
            this.rbFemale .Checked = true;
  }
  ///显示其它对象,这里显示联系信息
  private void ShowContactInfo(CContactInfo info)
  {
   if(info==null) return;
   
   this.tb_phone.Text=info.Phone;
   this.tbMobilePhone.Text = info.MobilePhoneNo ;
   this.tbEmail.Text = info.EMail ;
  }
///这里显示教育经历
  private void ShowEducationHistory(CEducationHistory history)
  {
   if(history==null)  return;
   this.tb_school.Text=history.School;
   this.tb_time.Value=history.StartDate.ToShortDateString();
   this.tb_study.Text=history.Speciality;
   this.ddlEducationalLevel.SelectedValue = history.EducationalLevel ;
   this.ddlDegree.SelectedValue =history.Degree  ;
  }
  
  private void InitApplyRecord(CApplyRecord apply)
  {
   if(apply==null) return;

   this.tb_eng.SelectedValue =apply.EnglishLevel;
   this.tb_jan.SelectedValue = apply.JanpaneseLevel ;
   this.tb_other.SelectedValue = apply.OtherLanguageName ;
   this.tbOtherLanguageLevel.Text = apply.OtherLanguageLevel ;

   this.tb_work1.Text=apply.ApplyJob1;
   this.tb_work2.Text=apply.ApplyJob2;
   this.tb_work3.Text=apply.ApplyJob3;
   this.applydate.Value=apply.ApplyDate.ToShortDateString();

   InitEducationHistory(apply.EducationHistory);
  }
    结论:显示数据要清晰易懂,责任明确,每个哪个函数负责取对象,哪个函数负责显示哪个对象的数据,显示数据是要保持一条语句显示一个Porperty,做不到的使用函数来进行处理。


posted on 2005-02-21 09:50  caidehui  阅读(1535)  评论(0编辑  收藏  举报