以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- Datalist动态调用SQL外部数据 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=1766) |
-- 作者:woodiy -- 发布时间:2009/2/7 18:35:00 -- Datalist动态调用SQL外部数据 1.窗口的Afterload事件: Dim dst As WinForm.DataList = e.Form.Controls("DataList1") dst.DataTable = DataTables("客户") dst.Build() 显示窗口如下: 此主题相关图片如下:1111.jpg 2.左边目录树的NodeMouseDoubleClick事件: Dim 省市 As String = e.Form.Controls("TreeView1").SelectedNode.Text Dim cmd As New SQLCommand Dim dt As DataTable Cmd.ConnectionName = "systemdata" \'外部数据源 cmd.CommandText = "Select * From {客户} Where [省市] = \'" & 省市 & "\'" dt = cmd.ExecuteReader() \'生成统计表 Dim dst As WinForm.DataList = e.Form.Controls("DataList1") dst.DataTable = dt dst.Build() 其中"systemdata"为外部SQL数据源 点击左边的目录树,就出现如下错误, 右边Datalist中没有动戊显示: 此主题相关图片如下:22222.jpg 请各位帮忙指点一下,谢谢! [此贴子已经被作者于2009-2-7 18:35:22编辑过]
|
-- 作者:菜鸟foxtable -- 发布时间:2009/2/7 19:45:00 -- 发文件上来看看?或者把NodeMouseDoubleClick事件全部代码粘贴上来. |
-- 作者:菜鸟foxtable -- 发布时间:2009/2/7 19:49:00 -- 或者试试这样... 在运行过程中,单击节点会执行NodeMouseClick事件,双击节点会执行NodeMouseDoubleClick事件。 \'如果希望通过节点标题来判断,请改为: Select Case e.Node.Name Case "名称1" \'在此加入相应的代码 Case "名称2" \'在此加入相应的代码 Case "名称3" \'在此加入相应的代码 Case "名称4" \'在此加入相应的代码 End Select 另外留意一下下图红箭头所指目录树属性 此主题相关图片如下:001.jpg [此贴子已经被作者于2009-2-7 19:53:45编辑过]
|
-- 作者:woodiy -- 发布时间:2009/2/8 19:17:00 -- 谢谢大家的帮助,现在成功了,准确的代码如下: Dim 省市 As String = e.Form.Controls("TreeView1").SelectedNode.Text Dim cmd As New SQLCommand Dim dt As DataTable Cmd.ConnectionName = "systemdata" \'外部数据源,注意大小写, cmd.CommandText = "Select * From [客户] Where [省市] = \'" & 省市 & "\'" \'注意要用"[]"符号 dt = cmd.ExecuteReader() \'生成统计表 Dim dst As WinForm.DataList = e.Form.Controls("DataList1") dst.DataTable = dt dst.Build() |