vb.net dynamic link lable
up vote
1
down vote
favorite
How can i find out which dynamic link has been clicked on Visual Basic? I have some LinkLabels created dynamically according to a dataset, and i want to open a new form that contains the information from that dataset, but i need to know how to load the form according to the link clicked.. code below...
//This function creates linklabels according to the rows in the datatable
Sub DynamicLabels()
Dim i As Integer
Dim x As Integer = 14
Dim y As Integer = 50
Dim tp As TabPage = tabControl1.TabPages(1)
If db.HasConnection() Then
If db.SQLDS IsNot Nothing Then
db.SQLDS.Clear()
End If
db.RunQuery("SELECT c.courseSubj AS Subject, c.courseNum AS CourseNum, r.className AS ClassName, t.tName AS Professor
FROM course c, classRoom r, teacher t, classroom_student u, student s
WHERE c.courseId=r.course_id AND t.teacherId=r.teacher_id AND s.studentId=u.student_id AND u.classroom_id=r.classId AND s.sUsername='" & Login.Usr.Text & "' ")
For i = 0 To db.SQLDS.Tables(0).Rows.Count - 1
ReDim MyLabel(db.SQLDS.Tables(0).Rows.Count)
y += 50
With MyLabel(i)
MyLabel(i) = New LinkLabel()
MyLabel(i).Name = "linklabel" & i.ToString
MyLabel(i).Location = New Point(x, y)
MyLabel(i).Size = New Size(700, 40)
MyLabel(i).Font = New Font("Microsoft Sans Serif", 14)
MyLabel(i).Text = String.Format(CType(db.SQLDS.Tables(0).Rows(i).Item("Subject"), String) & " " & CType(db.SQLDS.Tables(0).Rows(i).Item("CourseNum"), String) & " " & CType(db.SQLDS.Tables(0).Rows(i).Item("ClassName"), String) & ": " & CType(db.SQLDS.Tables(0).Rows(i).Item("Professor"), String))
AddHandler MyLabel(i).LinkClicked, AddressOf label_LinkClicked
End With
tp.Controls.Add(MyLabel(i))
Next
End If
End Sub
I want to load a new form containing some information from the dataset.
vb.net linklabel
New contributor
|
show 1 more comment
up vote
1
down vote
favorite
How can i find out which dynamic link has been clicked on Visual Basic? I have some LinkLabels created dynamically according to a dataset, and i want to open a new form that contains the information from that dataset, but i need to know how to load the form according to the link clicked.. code below...
//This function creates linklabels according to the rows in the datatable
Sub DynamicLabels()
Dim i As Integer
Dim x As Integer = 14
Dim y As Integer = 50
Dim tp As TabPage = tabControl1.TabPages(1)
If db.HasConnection() Then
If db.SQLDS IsNot Nothing Then
db.SQLDS.Clear()
End If
db.RunQuery("SELECT c.courseSubj AS Subject, c.courseNum AS CourseNum, r.className AS ClassName, t.tName AS Professor
FROM course c, classRoom r, teacher t, classroom_student u, student s
WHERE c.courseId=r.course_id AND t.teacherId=r.teacher_id AND s.studentId=u.student_id AND u.classroom_id=r.classId AND s.sUsername='" & Login.Usr.Text & "' ")
For i = 0 To db.SQLDS.Tables(0).Rows.Count - 1
ReDim MyLabel(db.SQLDS.Tables(0).Rows.Count)
y += 50
With MyLabel(i)
MyLabel(i) = New LinkLabel()
MyLabel(i).Name = "linklabel" & i.ToString
MyLabel(i).Location = New Point(x, y)
MyLabel(i).Size = New Size(700, 40)
MyLabel(i).Font = New Font("Microsoft Sans Serif", 14)
MyLabel(i).Text = String.Format(CType(db.SQLDS.Tables(0).Rows(i).Item("Subject"), String) & " " & CType(db.SQLDS.Tables(0).Rows(i).Item("CourseNum"), String) & " " & CType(db.SQLDS.Tables(0).Rows(i).Item("ClassName"), String) & ": " & CType(db.SQLDS.Tables(0).Rows(i).Item("Professor"), String))
AddHandler MyLabel(i).LinkClicked, AddressOf label_LinkClicked
End With
tp.Controls.Add(MyLabel(i))
Next
End If
End Sub
I want to load a new form containing some information from the dataset.
vb.net linklabel
New contributor
The sender parameter in the clicked event tells you the instance. Cast it to a LinkLabel.
– LarsTech
Nov 21 at 18:55
Do i need to create a function with these parameters? how can i do that?
– SpanishCode
Nov 21 at 21:00
See VB.NET What is Sender used for?
– LarsTech
Nov 21 at 21:04
In your click event handler, just cast the sender likedim lbl as LinkLabel = ctype(sender, LinkLabel)
and then you can access its Name() property that you have set...or justdim labelname as string = directcast(sender, linklabel).name
– soohoonigan
Nov 21 at 21:15
Why a LinkLabel? They are for displaying hyperlinks, internet URL's . How about a plain old Label?
– Mary
Nov 22 at 4:26
|
show 1 more comment
up vote
1
down vote
favorite
up vote
1
down vote
favorite
How can i find out which dynamic link has been clicked on Visual Basic? I have some LinkLabels created dynamically according to a dataset, and i want to open a new form that contains the information from that dataset, but i need to know how to load the form according to the link clicked.. code below...
//This function creates linklabels according to the rows in the datatable
Sub DynamicLabels()
Dim i As Integer
Dim x As Integer = 14
Dim y As Integer = 50
Dim tp As TabPage = tabControl1.TabPages(1)
If db.HasConnection() Then
If db.SQLDS IsNot Nothing Then
db.SQLDS.Clear()
End If
db.RunQuery("SELECT c.courseSubj AS Subject, c.courseNum AS CourseNum, r.className AS ClassName, t.tName AS Professor
FROM course c, classRoom r, teacher t, classroom_student u, student s
WHERE c.courseId=r.course_id AND t.teacherId=r.teacher_id AND s.studentId=u.student_id AND u.classroom_id=r.classId AND s.sUsername='" & Login.Usr.Text & "' ")
For i = 0 To db.SQLDS.Tables(0).Rows.Count - 1
ReDim MyLabel(db.SQLDS.Tables(0).Rows.Count)
y += 50
With MyLabel(i)
MyLabel(i) = New LinkLabel()
MyLabel(i).Name = "linklabel" & i.ToString
MyLabel(i).Location = New Point(x, y)
MyLabel(i).Size = New Size(700, 40)
MyLabel(i).Font = New Font("Microsoft Sans Serif", 14)
MyLabel(i).Text = String.Format(CType(db.SQLDS.Tables(0).Rows(i).Item("Subject"), String) & " " & CType(db.SQLDS.Tables(0).Rows(i).Item("CourseNum"), String) & " " & CType(db.SQLDS.Tables(0).Rows(i).Item("ClassName"), String) & ": " & CType(db.SQLDS.Tables(0).Rows(i).Item("Professor"), String))
AddHandler MyLabel(i).LinkClicked, AddressOf label_LinkClicked
End With
tp.Controls.Add(MyLabel(i))
Next
End If
End Sub
I want to load a new form containing some information from the dataset.
vb.net linklabel
New contributor
How can i find out which dynamic link has been clicked on Visual Basic? I have some LinkLabels created dynamically according to a dataset, and i want to open a new form that contains the information from that dataset, but i need to know how to load the form according to the link clicked.. code below...
//This function creates linklabels according to the rows in the datatable
Sub DynamicLabels()
Dim i As Integer
Dim x As Integer = 14
Dim y As Integer = 50
Dim tp As TabPage = tabControl1.TabPages(1)
If db.HasConnection() Then
If db.SQLDS IsNot Nothing Then
db.SQLDS.Clear()
End If
db.RunQuery("SELECT c.courseSubj AS Subject, c.courseNum AS CourseNum, r.className AS ClassName, t.tName AS Professor
FROM course c, classRoom r, teacher t, classroom_student u, student s
WHERE c.courseId=r.course_id AND t.teacherId=r.teacher_id AND s.studentId=u.student_id AND u.classroom_id=r.classId AND s.sUsername='" & Login.Usr.Text & "' ")
For i = 0 To db.SQLDS.Tables(0).Rows.Count - 1
ReDim MyLabel(db.SQLDS.Tables(0).Rows.Count)
y += 50
With MyLabel(i)
MyLabel(i) = New LinkLabel()
MyLabel(i).Name = "linklabel" & i.ToString
MyLabel(i).Location = New Point(x, y)
MyLabel(i).Size = New Size(700, 40)
MyLabel(i).Font = New Font("Microsoft Sans Serif", 14)
MyLabel(i).Text = String.Format(CType(db.SQLDS.Tables(0).Rows(i).Item("Subject"), String) & " " & CType(db.SQLDS.Tables(0).Rows(i).Item("CourseNum"), String) & " " & CType(db.SQLDS.Tables(0).Rows(i).Item("ClassName"), String) & ": " & CType(db.SQLDS.Tables(0).Rows(i).Item("Professor"), String))
AddHandler MyLabel(i).LinkClicked, AddressOf label_LinkClicked
End With
tp.Controls.Add(MyLabel(i))
Next
End If
End Sub
I want to load a new form containing some information from the dataset.
vb.net linklabel
vb.net linklabel
New contributor
New contributor
New contributor
asked Nov 21 at 18:51
SpanishCode
61
61
New contributor
New contributor
The sender parameter in the clicked event tells you the instance. Cast it to a LinkLabel.
– LarsTech
Nov 21 at 18:55
Do i need to create a function with these parameters? how can i do that?
– SpanishCode
Nov 21 at 21:00
See VB.NET What is Sender used for?
– LarsTech
Nov 21 at 21:04
In your click event handler, just cast the sender likedim lbl as LinkLabel = ctype(sender, LinkLabel)
and then you can access its Name() property that you have set...or justdim labelname as string = directcast(sender, linklabel).name
– soohoonigan
Nov 21 at 21:15
Why a LinkLabel? They are for displaying hyperlinks, internet URL's . How about a plain old Label?
– Mary
Nov 22 at 4:26
|
show 1 more comment
The sender parameter in the clicked event tells you the instance. Cast it to a LinkLabel.
– LarsTech
Nov 21 at 18:55
Do i need to create a function with these parameters? how can i do that?
– SpanishCode
Nov 21 at 21:00
See VB.NET What is Sender used for?
– LarsTech
Nov 21 at 21:04
In your click event handler, just cast the sender likedim lbl as LinkLabel = ctype(sender, LinkLabel)
and then you can access its Name() property that you have set...or justdim labelname as string = directcast(sender, linklabel).name
– soohoonigan
Nov 21 at 21:15
Why a LinkLabel? They are for displaying hyperlinks, internet URL's . How about a plain old Label?
– Mary
Nov 22 at 4:26
The sender parameter in the clicked event tells you the instance. Cast it to a LinkLabel.
– LarsTech
Nov 21 at 18:55
The sender parameter in the clicked event tells you the instance. Cast it to a LinkLabel.
– LarsTech
Nov 21 at 18:55
Do i need to create a function with these parameters? how can i do that?
– SpanishCode
Nov 21 at 21:00
Do i need to create a function with these parameters? how can i do that?
– SpanishCode
Nov 21 at 21:00
See VB.NET What is Sender used for?
– LarsTech
Nov 21 at 21:04
See VB.NET What is Sender used for?
– LarsTech
Nov 21 at 21:04
In your click event handler, just cast the sender like
dim lbl as LinkLabel = ctype(sender, LinkLabel)
and then you can access its Name() property that you have set...or just dim labelname as string = directcast(sender, linklabel).name
– soohoonigan
Nov 21 at 21:15
In your click event handler, just cast the sender like
dim lbl as LinkLabel = ctype(sender, LinkLabel)
and then you can access its Name() property that you have set...or just dim labelname as string = directcast(sender, linklabel).name
– soohoonigan
Nov 21 at 21:15
Why a LinkLabel? They are for displaying hyperlinks, internet URL's . How about a plain old Label?
– Mary
Nov 22 at 4:26
Why a LinkLabel? They are for displaying hyperlinks, internet URL's . How about a plain old Label?
– Mary
Nov 22 at 4:26
|
show 1 more comment
1 Answer
1
active
oldest
votes
up vote
0
down vote
I just added one label to demonstrate. Each Label you add would have the same Event procedure (the AddressOf part) but the Add Handler refers directly to the new label variable (mylabel.Click)
Private Sub Form3_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim mylabel As New Label With {
.Text = "New Label",
.Name = "newLabel",
.Location = New Point(400, 100)
}
AddHandler mylabel.Click, AddressOf aLabel_Click
Controls.Add(mylabel)
End Sub
And here is your event procedure
Private Sub aLabel_Click(sender As Object, e As EventArgs)
Dim EventLabel As Label = DirectCast(sender, Label)
Dim LabelText As String = EventLabel.Text
'or any other property of the label you need to use
MessageBox.Show(LabelText)
End Sub
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
I just added one label to demonstrate. Each Label you add would have the same Event procedure (the AddressOf part) but the Add Handler refers directly to the new label variable (mylabel.Click)
Private Sub Form3_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim mylabel As New Label With {
.Text = "New Label",
.Name = "newLabel",
.Location = New Point(400, 100)
}
AddHandler mylabel.Click, AddressOf aLabel_Click
Controls.Add(mylabel)
End Sub
And here is your event procedure
Private Sub aLabel_Click(sender As Object, e As EventArgs)
Dim EventLabel As Label = DirectCast(sender, Label)
Dim LabelText As String = EventLabel.Text
'or any other property of the label you need to use
MessageBox.Show(LabelText)
End Sub
add a comment |
up vote
0
down vote
I just added one label to demonstrate. Each Label you add would have the same Event procedure (the AddressOf part) but the Add Handler refers directly to the new label variable (mylabel.Click)
Private Sub Form3_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim mylabel As New Label With {
.Text = "New Label",
.Name = "newLabel",
.Location = New Point(400, 100)
}
AddHandler mylabel.Click, AddressOf aLabel_Click
Controls.Add(mylabel)
End Sub
And here is your event procedure
Private Sub aLabel_Click(sender As Object, e As EventArgs)
Dim EventLabel As Label = DirectCast(sender, Label)
Dim LabelText As String = EventLabel.Text
'or any other property of the label you need to use
MessageBox.Show(LabelText)
End Sub
add a comment |
up vote
0
down vote
up vote
0
down vote
I just added one label to demonstrate. Each Label you add would have the same Event procedure (the AddressOf part) but the Add Handler refers directly to the new label variable (mylabel.Click)
Private Sub Form3_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim mylabel As New Label With {
.Text = "New Label",
.Name = "newLabel",
.Location = New Point(400, 100)
}
AddHandler mylabel.Click, AddressOf aLabel_Click
Controls.Add(mylabel)
End Sub
And here is your event procedure
Private Sub aLabel_Click(sender As Object, e As EventArgs)
Dim EventLabel As Label = DirectCast(sender, Label)
Dim LabelText As String = EventLabel.Text
'or any other property of the label you need to use
MessageBox.Show(LabelText)
End Sub
I just added one label to demonstrate. Each Label you add would have the same Event procedure (the AddressOf part) but the Add Handler refers directly to the new label variable (mylabel.Click)
Private Sub Form3_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim mylabel As New Label With {
.Text = "New Label",
.Name = "newLabel",
.Location = New Point(400, 100)
}
AddHandler mylabel.Click, AddressOf aLabel_Click
Controls.Add(mylabel)
End Sub
And here is your event procedure
Private Sub aLabel_Click(sender As Object, e As EventArgs)
Dim EventLabel As Label = DirectCast(sender, Label)
Dim LabelText As String = EventLabel.Text
'or any other property of the label you need to use
MessageBox.Show(LabelText)
End Sub
answered Nov 22 at 5:34
Mary
2,6032618
2,6032618
add a comment |
add a comment |
SpanishCode is a new contributor. Be nice, and check out our Code of Conduct.
SpanishCode is a new contributor. Be nice, and check out our Code of Conduct.
SpanishCode is a new contributor. Be nice, and check out our Code of Conduct.
SpanishCode is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53418789%2fvb-net-dynamic-link-lable%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
The sender parameter in the clicked event tells you the instance. Cast it to a LinkLabel.
– LarsTech
Nov 21 at 18:55
Do i need to create a function with these parameters? how can i do that?
– SpanishCode
Nov 21 at 21:00
See VB.NET What is Sender used for?
– LarsTech
Nov 21 at 21:04
In your click event handler, just cast the sender like
dim lbl as LinkLabel = ctype(sender, LinkLabel)
and then you can access its Name() property that you have set...or justdim labelname as string = directcast(sender, linklabel).name
– soohoonigan
Nov 21 at 21:15
Why a LinkLabel? They are for displaying hyperlinks, internet URL's . How about a plain old Label?
– Mary
Nov 22 at 4:26