以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 DOM/SAX/XPath 』  (http://bbs.xml.org.cn/list.asp?boardid=11)
----  .net下用xmldatasource绑定gridview的问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=11&rootid=&id=39467)


--  作者:andyjean
--  发布时间:10/28/2006 10:36:00 AM

--  .net下用xmldatasource绑定gridview的问题
我的xml文件 结构是:
<学生管理>--根元素
   <系别 系号="" 系名="">
      <专业  专业号="" 专业名="">
         <学生>
           <学号>
           <姓名>
         </学生>
      </专业>
   </系别>
</学生管理>


我想用三个Gridview 分级显示(页面载入时只有Gridview1可见,Gridview2,3都不可见),比如Gridview1显示<系别> ,Gridview2显示<专业>
Gridview3显示<学生>
也就是在Gridview1上选择某个<系别>,然后Gridview2可见,
Gridview2显示Gridview1选定<系别>的所有<专业>
然后在Gridview2上选择某个<专业>,然后Gridview3可见,
Gridview3显示Gridview2选定<专业>下的所有 <学生>
  当然其中Gridview2,3的数据源 是改变它们的xpath来指定的

  Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView1.SelectedIndexChanged
        Dim currentIndex As Integer
        currentIndex = GridView1.SelectedIndex
        departmentid = CStr(GridView1.DataKeys(currentIndex).Value)
        XmlDataSource2.XPath = String.Format("/学生管理/系别[@系号=" & departmentid & "]/专业", departmentid)
        GridView2.Visible = True
    End Sub

    Protected Sub GridView2_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView2.SelectedIndexChanged
        Dim currentIndex1 As Integer
        currentIndex1 = GridView2.SelectedIndex
        Dim majorid As String
        majorid = CStr(GridView2.DataKeys(currentIndex1).Value)
        XmlDataSource3.XPath = String.Format("//专业[@专业号=" & majorid & "]/*", majorid)
        GridView3.Visible = True
    End Sub

  我的问题是:  Gridview3不能显示
Gridview1 显示的是<系别>中的两个属性<系名>和<系号>,
Gridview2显示的是<专业>中的两个属性<专业名>和<专业号>  

那我怎么不能通过Gridview3 显示<学生>下的子元素啊?? ,比如<学号><姓名>


--  作者:andyjean
--  发布时间:10/31/2006 7:04:00 PM

--  
关于这个问题
论坛 的管理员Admin叫我来这里提问,可我帖子都发了一周了,还是没回音啊
失望.......
高手真的越来越少了吗??
--  作者:Qr
--  发布时间:11/1/2006 8:46:00 AM

--  
偶对VB不太懂,如果一定要指出什么来,XmlDataSource3.XPath = String.Format("//专业[@专业号=" & majorid & "]/*", majorid)一行的XPath可能有问题,呵呵,只是怀疑。

另外,似乎.NET中的那个几控件不支持超过3级以上的XML,也就是几天前偶才遇到这个问题。


--  作者:andyjean
--  发布时间:11/3/2006 7:51:00 PM

--  
啊 恼火的很哦

W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
109.375ms