我是新手~呵,小弟在这里问个问题:希望大家来解答..谢了!!说出自己的见解都有分!!
我建了个Form1,上面有个datagridview: 名字 年龄 性别
张三 18 男
李四 22 男
王五 20 女
我想实现:双击“张三”那一行,就会出现个Form2,上面有两个button:A学习信息, B工作信息。如果你选A,就会在新的一个Form3上的datagridview上出现张三的学习信息,如果选B,就会出现张三的工作信息。
依次点李四,王五都是一样的效果。就是不管双击Form1 datagridview上面的哪一行,form2都要跳出来询问你选哪一个(我现在只考虑选A的情况),然后就会在Form3 的datagridview中出现对应的人的信息。相当于点一个Button要,都要出现Form3,但form3的datagridview上要显示不同的信息(因为有3个人)。PS:双击效果我实现了,怎样绑定他们的数据我会,FORM2和FORM3要循环也实现了,就只是,怎么每次点那一个BUTTON,而出现3次不同的信息?
我建了个Form1,上面有个datagridview: 名字 年龄 性别
张三 18 男
李四 22 男
王五 20 女
我想实现:双击“张三”那一行,就会出现个Form2,上面有两个button:A学习信息, B工作信息。如果你选A,就会在新的一个Form3上的datagridview上出现张三的学习信息,如果选B,就会出现张三的工作信息。
依次点李四,王五都是一样的效果。就是不管双击Form1 datagridview上面的哪一行,form2都要跳出来询问你选哪一个(我现在只考虑选A的情况),然后就会在Form3 的datagridview中出现对应的人的信息。相当于点一个Button要,都要出现Form3,但form3的datagridview上要显示不同的信息(因为有3个人)。PS:双击效果我实现了,怎样绑定他们的数据我会,FORM2和FORM3要循环也实现了,就只是,怎么每次点那一个BUTTON,而出现3次不同的信息?
1. 姓名(最好使用具有唯一性的ID号)
2. 信息类型:即学习信息或是工作信息if 住处类型=学习信息 then
select * from 学习信息 where 姓名='姓名变量'
else
select * from 工作信息 where 姓名='姓名变量'
end if然后把Form3中的DataGridView绑定到这个数据集就行了,不需要任何循环
form1,form2,form3 都要有联系,因为你点form1上的,form3上要显示东西,相当于form2起个连接作用而已~
1. 姓名(最好使用具有唯一性的ID号)
2. 信息类型:即学习信息或是工作信息
不需要记录form1中的行数,
在form1中当点击某行记录时就对姓名全局变量赋值,在form2中对信息类型全局变量赋值
1、既然,你实现了双击事件,就在双击事件中写上:Form2.Visible=True,同时计下双击的姓名:ID=名字(这个ID后面要用);
2、Form2的操作:不管学习信息也好, 工作信息也好,最好都放在数据库中,然后根据ID,通过SQL语句Select查出来,并显示出来。这个应该不难。
在form3中根据form2中的不同选择重新检索即可
Private curLine As Integer = -1 Private Sub DataGridView1_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick If e.RowIndex <> curLine Then
strName = DataGridView1.Rows(e.RowIndex).Cells(0).Value
Dim frm As New Form2
frm.Show()
End If
curLine = e.RowIndex
End Sub
Form2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim frm As New Form3
frm.infoType = "A" '学习信息
frm.Show()
End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim frm As New Form3
frm.infoType = "B" '工作信息
frm.Show()
End Sub
Form3 Private strName As String
Public infoType As String = "" Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.strName = Form1.strName
If infoType = "A" Then Else End If
End Sub