以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  窗口动态添加控件,  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=54192)

--  作者:xuke5001
--  发布时间:2014/7/23 14:00:00
--  窗口动态添加控件,

我用主窗口双击弹出增加画面后,使用动态添加控件,点击增加后出现找不到控件,不知道是什么问题啊
图片点击可在新窗口打开查看此主题相关图片如下:动态添加控件后,点击增加出现问题.png
图片点击可在新窗口打开查看

动态添加控件代码

For Each c As Col In Tables(Vars("ff")).cols
    Dim txt As WinForm.TextBox
    txt = Forms("新增").CreateControl("TextBox1", ControlTypeEnum.TextBox)
    txt.Left = 120
    txt.width = 180
    txt.Top = 26* c.Index
    Forms("新增").AddControl(txt)
    txt.BindingField = c.Table.Name & "." & c.Name \'必须先将控件加入到窗口或容器中,才能设置绑定字段

   
Next
For Each c As Col In Tables(Vars("ff")).cols
Dim txt1 As WinForm.Label
    txt1 = Forms("新增").CreateControl("lable1", ControlTypeEnum.Label)
    txt1.Left = 10
    txt1.Top = 26* c.Index
    Forms("新增").AddControl(txt1)
     txt1.Text =c.Name \'必须先将控件加入到窗口或容器中,才能设置绑定字段
Next

 

新增按钮代码:

Dim t1 As String = e.Form.Controls("combobox1").VALUE
Dim t2 As String = e.Form.Controls("combobox2").VALUE
Dim t3 As String = e.Form.Controls("combobox3").VALUE
Dim t4 As String = e.Form.Controls("combobox4").VALUE
Dim t5 As String = e.Form.Controls("combobox5").VALUE
Dim t6 As String = e.Form.Controls("combobox6").VALUE
Dim t7 As String = e.Form.Controls("combobox7").VALUE
Dim t8 As String = e.Form.Controls("combobox8").VALUE
Dim t9 As String = e.Form.Controls("combobox9").VALUE
Dim t10 As String = e.Form.Controls("combobox10").VALUE

If DataTables(Vars("ff")).DataCols.Count = 0 Then
    Tables(Vars("ff")).AddNew
Else
   If t2 = "" And t3 = "" And t4 = "" And t5 = "" And t6 = "" And t7 = "" And t8 = "" And t9 = "" And t10 = "" Then
        MessageBox.show("请输入完整的材料信息","提示")
        Return
    Else
        Dim dr As Row = Tables(Vars("ff")).AddNew
            dr("部门编号") = t1
            dr("员工编号") = t2
            dr("员工姓名") = t3
            dr("性别") = t4
            dr("员工职务") = t5
            dr("联系电话") = t6
            dr("员工传真") = t7
            dr("员工邮箱") = t8
            dr("详细地址") = t9
            dr("是否离职") = t10
    End If
   
End If

[此贴子已经被作者于2014-7-23 14:01:48编辑过]

--  作者:Bin
--  发布时间:2014/7/23 14:09:00
--  
上例子看看
--  作者:xuke5001
--  发布时间:2014/7/23 14:15:00
--  

实例

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:报价管理系统.zip


--  作者:Bin
--  发布时间:2014/7/23 14:33:00
--  
能不能说一下,操作哪里重现错误,并且说明你要实现的需求是什么
--  作者:xuke5001
--  发布时间:2014/7/23 14:41:00
--  
员工---新增---新增
图片点击可在新窗口打开查看此主题相关图片如下:动态添加控件后,点击增加出现问题.png
图片点击可在新窗口打开查看

--  作者:Bin
--  发布时间:2014/7/23 14:44:00
--  
搞不懂你问题

你动态增加的控件是TextBox1

你新增按钮里调用了combobox1  - 10 但是你窗口根本就没这些控件,当然会报错.

--  作者:xuke5001
--  发布时间:2014/7/23 15:02:00
--  
改过来以后还是不行啊
--  作者:Bin
--  发布时间:2014/7/23 15:04:00
--  
你调用了足足10个控件,你全都没有.
--  作者:xuke5001
--  发布时间:2014/7/23 15:17:00
--  

还有别的方法实现增加功能吗?

 


--  作者:有点甜
--  发布时间:2014/7/23 15:42:00
--  
      
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:报价管理系统.rar