| 演示功能1：如何取下拉选中行的其它列的数据， 请选择下拉，观察下拉后的浮动提示窗，分析其js; 演示功能2：设置某些行不可选

下面就是js源码中OnEvent( )事件的片段：

    function OnEvent(id, Event, p1, p2, p3, p4)
    {
     if(id=='AF1') {
      if(Event == "DropdownSelChanged") {  //演示取下拉选中行的其它列的内容
       var work = AF1.func("GetDropCellData", p1 + "\r\n" + p2 + "\r\n work \r\n true"); //主演
       var cur = AF1.func("GetDropCellData", p1 + "\r\n" + p2 + "\r\n cur \r\n true"); //生涯
       var s = "主演: "+work + "\r\n生涯: " + cur;
       s = s.replace(/\r\n/g, "\\r\\n");
       AF1.func("msgFloat", s+ "\r\nhold=5");  //浮现提示(全局函数)
      }
      else if(Event == "DropDownDataReach" && p1=="person") {  //演示 disable row 的功能
       //注：在 DropDownDataReach 事件中实现对下拉数据的操作，是因为考虑到下拉数据默认是异步加载的！
       var h = AF1.func("GetHandle", "abt");
       AF1.func(h + "SetRowEnable", "0\r\nfalse");
      }
     }
    }

| 演示功能3：下拉的显示列表达式：下拉的数据是多列的，但 displayCol 采用了表达式，实现了同时显示下拉列表中多个列的功能; 关键点是XML中的 displayCol='=name+","+dis+"," + bdt+ "生于"+bornin'

| Example1: 采用dropTreelist |  | Example2: 采用DropList |

Example1的XML描述文件:

    <treelist>
     <properties editable='true'/>
     <cols>
      <col name='id' width='50'>序号</col>
      <col name='abt' edittype='dropTreelist' droplistId='person'>简介</col>
     </cols>
     <droplists>
      <droplist id='person' treelistURL='treelist/t16_3.xml' dataCol='name' displayCol='=name+\",\"+dis+\",\" + bdt+ \"生于\"+bornin'/>
     </droplists>
    </treelist>

其中treelistURL指向的下拉Treelist的XML描述文件.
Example2的XML描述文件:

    <treelist>
     <properties editable='true'/>
     <cols>
      <col name='id' width='50'>序号</col>
      <col name='abt' edittype='droplist' droplistId='person'>简介</col>
     </cols>
     <droplists>
      <droplist id='person' dataURL='treelistdata/person.xml' dataCol='name' displayCol='=name+\",\"+dis+\",\" + bdt+ \"生于\"+bornin'/>
     </droplists>
    </treelist>