473,748 Members | 7,377 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

How to Handle clsMyClass.Even t raised in GenericList(Of clsMyClass)

Hi,

I have a Generic List, for instance: Public MyPersonnesDeCo ntact As New
System.Collecti ons.Generic.Lis t(Of clsPersonne)

My clsPersonne raises some events, and I want to be able to handle these
events. The problem is: when using the WithEvents (Public WithEvents
MyPersonnesDeCo ntact As New System.Collecti ons.Generic.Lis t(Of clsPersonne))
I get an error, saying "'WithEvent s' variable does not raise any events.".

Does anybody know how I could be able to handle events that happens in the
intances of the class in my Generic.List?

Any help, hints, workarounds etc would be really appreciated!

Thanks a lot in advance,

Pieter
Oct 13 '05 #1
13 1759
Pieter,

Are you sure that your class raises "Public" events.

Fist guess

:-)

Cor
Oct 13 '05 #2
hehe yes I'm sure. I can do this "Public WithEvents clsP As New clsPersonne"
without any problem...

"Cor Ligthert [MVP]" <no************ @planet.nl> wrote in message
news:%2******** **********@TK2M SFTNGP10.phx.gb l...
Pieter,

Are you sure that your class raises "Public" events.

Fist guess

:-)

Cor

Oct 13 '05 #3
One way is that before inserting the objects in generic list, hook up the
event handlers.

----------------
-Atul, Sky Software http://www.ssware.com
Shell MegaPack For .Net & ActiveX
Windows Explorer GUI Controls
&
Quick-Launch Like Appbars, MSN/Office2003 Style Popups,
System Tray Icons and Shortcuts/Internet Shortcuts
----------------

"DraguVaso" <pi**********@h otmail.com> wrote in message
news:e5******** ********@TK2MSF TNGP15.phx.gbl. ..
Hi,

I have a Generic List, for instance: Public MyPersonnesDeCo ntact As New
System.Collecti ons.Generic.Lis t(Of clsPersonne)

My clsPersonne raises some events, and I want to be able to handle these
events. The problem is: when using the WithEvents (Public WithEvents
MyPersonnesDeCo ntact As New System.Collecti ons.Generic.Lis t(Of
clsPersonne)) I get an error, saying "'WithEvent s' variable does not raise
any events.".

Does anybody know how I could be able to handle events that happens in the
intances of the class in my Generic.List?

Any help, hints, workarounds etc would be really appreciated!

Thanks a lot in advance,

Pieter

Oct 13 '05 #4
Hi,

Try something like this.

Public Class Form1
Dim myList As New List(Of TestClass)
Private Sub Form1_Load(ByVa l sender As System.Object, ByVal e As
System.EventArg s) Handles MyBase.Load
For x As Integer = 0 To 10
Dim ct As New TestClass
ct.TestItem = x.ToString
AddHandler ct.ItemAdded, AddressOf ItemAddedEvent
myList.Add(ct)
Next
End Sub

Public Sub ItemAddedEvent( ByVal sender As Object, ByVal e As EventArgs)
MessageBox.Show ("Item Added")
End Sub

Private Sub Button1_Click(B yVal sender As System.Object, ByVal e As
System.EventArg s) Handles Button1.Click
myList(5).TestI tem = "Changed"
End Sub
End Class
Public Class TestClass
Public Event ItemAdded(ByVal sender As Object, ByVal e As EventArgs)

Dim mstrTest As String

Public Property TestItem() As String
Get
Return mstrTest
End Get
Set(ByVal value As String)
mstrTest = value
RaiseEvent ItemAdded(Me, New EventArgs)
End Set
End Property
End Class

Ken
-------------------
"DraguVaso" <pi**********@h otmail.com> wrote in message
news:e5******** ********@TK2MSF TNGP15.phx.gbl. ..
Hi,

I have a Generic List, for instance: Public MyPersonnesDeCo ntact As New
System.Collecti ons.Generic.Lis t(Of clsPersonne)

My clsPersonne raises some events, and I want to be able to handle these
events. The problem is: when using the WithEvents (Public WithEvents
MyPersonnesDeCo ntact As New System.Collecti ons.Generic.Lis t(Of
clsPersonne)) I get an error, saying "'WithEvent s' variable does not raise
any events.".

Does anybody know how I could be able to handle events that happens in the
intances of the class in my Generic.List?

Any help, hints, workarounds etc would be really appreciated!

Thanks a lot in advance,

Pieter

Oct 13 '05 #5
"DraguVaso" <pi**********@h otmail.com> schrieb:
I have a Generic List, for instance: Public MyPersonnesDeCo ntact As New
System.Collecti ons.Generic.Lis t(Of clsPersonne)

My clsPersonne raises some events, and I want to be able to handle these
events. The problem is: when using the WithEvents (Public WithEvents
MyPersonnesDeCo ntact As New System.Collecti ons.Generic.Lis t(Of
clsPersonne)) I get an error, saying "'WithEvent s' variable does not raise
any events.".


.... which is true. It's not the list object which is raising the events.
The objects stored in/referenced by the list are raising events. Thus
you'll have to connect event handlers to the items instea of connecting them
to the list. You can use the 'AddHandler' statement in order to add a
handler to an item's event. If the events are implemented properly, the
'sender' parameter of the event handler contains a reference to the object
which raised the event -- which is especially useful when connecting the
same event handler to the events of more than one object.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Oct 13 '05 #6
Ok thanks guys! I guess that will be the only solution :) I'll jsut have to
take care to add the handler's every time I add an object, but that will
have to be possible, hehe :)

thanks a lot,

Pieter

"Herfried K. Wagner [MVP]" <hi************ ***@gmx.at> wrote in message
news:e0******** ********@TK2MSF TNGP10.phx.gbl. ..
"DraguVaso" <pi**********@h otmail.com> schrieb:
I have a Generic List, for instance: Public MyPersonnesDeCo ntact As New
System.Collecti ons.Generic.Lis t(Of clsPersonne)

My clsPersonne raises some events, and I want to be able to handle these
events. The problem is: when using the WithEvents (Public WithEvents
MyPersonnesDeCo ntact As New System.Collecti ons.Generic.Lis t(Of
clsPersonne)) I get an error, saying "'WithEvent s' variable does not
raise any events.".


... which is true. It's not the list object which is raising the events.
The objects stored in/referenced by the list are raising events. Thus
you'll have to connect event handlers to the items instea of connecting
them to the list. You can use the 'AddHandler' statement in order to add
a handler to an item's event. If the events are implemented properly, the
'sender' parameter of the event handler contains a reference to the object
which raised the event -- which is especially useful when connecting the
same event handler to the events of more than one object.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Oct 13 '05 #7
Pieter,
As Herfreid stated, your clsPersonne raises events List(Of T) does not.

It sounds like you want List(Of T) to raise events based on the objects it
contains. What I normally do is derive a class from the base collection
(List(Of T) in your case), then override the "add" and "remove" of the
collection to use AddHandler & RemoveHandler on each object being added or
removed from my collection, so that the collection can raise the event that
the individual items raise...

Something like (.NET 1.1 sample):

Public Class Person

Public Event NameChanged As EventHandler

Private m_name As String

Public Property Name() As String
Get
Return m_name
End Get
Set(ByVal value As String)
m_name = value
OnNameChanged(E ventArgs.Empty)
End Set
End Property

Protected Overridable Sub OnNameChanged(B yVal e As EventArgs)
RaiseEvent NameChanged(Me, e)
End Sub

Public Overrides Function ToString() As String
Return "Person(" & m_name & ")"
End Function

End Class

Public Class PersonCollectio n
'Inherits CollectionBase
Inherits ArrayList

Public Event NameChanged As EventHandler

Public Overrides Function Add(ByVal value As Object) As Integer
Dim person As person = DirectCast(valu e, person)
AddHandler person.NameChan ged, AddressOf Person_NameChan ged
Return MyBase.Add(valu e)
End Function

Public Overrides Sub Remove(ByVal value As Object)
Dim person As person = DirectCast(valu e, person)
RemoveHandler person.NameChan ged, AddressOf Person_NameChan ged
MyBase.Remove(v alue)
End Sub

Private Sub Person_NameChan ged(ByVal sender As Object, ByVal e As
EventArgs)
' TODO: Consider defining a new EventArgs class that includes
person
RaiseEvent NameChanged(sen der, e)
End Sub

End Class

Private Shared WithEvents people As New PersonCollectio n

Private Shared Sub people_NameChan ged(ByVal sender As Object, ByVal e As
System.EventArg s) Handles people.NameChan ged
Debug.WriteLine (sender, "NameChange d")
End Sub

Public Shared Sub Main()

Dim person1 As New Person
Dim person2 As New Person
Dim person3 As New Person

people.Add(pers on1)
people.Add(pers on2)
people.Add(pers on3)

person1.Name = "Person 1"
person2.Name = "Person 2"
person3.Name = "Person 3"

people.Remove(p erson3)

person3.Name = String.Empty

End Sub

You may also need to override Insert & other methods...

NOTE: In practice I would have PersonCollectio n.NameChanged use an EventArgs
derived classt that included the Person object that changed, then the sender
parameter to the event would be the PersonCollectio n itself...

--
Hope this helps
Jay [MVP - Outlook]
T.S. Bradley - http://www.tsbradley.net
"DraguVaso" <pi**********@h otmail.com> wrote in message
news:e5******** ********@TK2MSF TNGP15.phx.gbl. ..
| Hi,
|
| I have a Generic List, for instance: Public MyPersonnesDeCo ntact As New
| System.Collecti ons.Generic.Lis t(Of clsPersonne)
|
| My clsPersonne raises some events, and I want to be able to handle these
| events. The problem is: when using the WithEvents (Public WithEvents
| MyPersonnesDeCo ntact As New System.Collecti ons.Generic.Lis t(Of
clsPersonne))
| I get an error, saying "'WithEvent s' variable does not raise any events.".
|
| Does anybody know how I could be able to handle events that happens in the
| intances of the class in my Generic.List?
|
| Any help, hints, workarounds etc would be really appreciated!
|
| Thanks a lot in advance,
|
| Pieter
|
|
Oct 13 '05 #8
Thanks! That's a great idea! :-)

"Jay B. Harlow [MVP - Outlook]" <Ja************ @tsbradley.net> wrote in
message news:eC******** *****@TK2MSFTNG P10.phx.gbl...
Pieter,
As Herfreid stated, your clsPersonne raises events List(Of T) does not.

It sounds like you want List(Of T) to raise events based on the objects it
contains. What I normally do is derive a class from the base collection
(List(Of T) in your case), then override the "add" and "remove" of the
collection to use AddHandler & RemoveHandler on each object being added or
removed from my collection, so that the collection can raise the event
that
the individual items raise...

Something like (.NET 1.1 sample):

Public Class Person

Public Event NameChanged As EventHandler

Private m_name As String

Public Property Name() As String
Get
Return m_name
End Get
Set(ByVal value As String)
m_name = value
OnNameChanged(E ventArgs.Empty)
End Set
End Property

Protected Overridable Sub OnNameChanged(B yVal e As EventArgs)
RaiseEvent NameChanged(Me, e)
End Sub

Public Overrides Function ToString() As String
Return "Person(" & m_name & ")"
End Function

End Class

Public Class PersonCollectio n
'Inherits CollectionBase
Inherits ArrayList

Public Event NameChanged As EventHandler

Public Overrides Function Add(ByVal value As Object) As Integer
Dim person As person = DirectCast(valu e, person)
AddHandler person.NameChan ged, AddressOf Person_NameChan ged
Return MyBase.Add(valu e)
End Function

Public Overrides Sub Remove(ByVal value As Object)
Dim person As person = DirectCast(valu e, person)
RemoveHandler person.NameChan ged, AddressOf Person_NameChan ged
MyBase.Remove(v alue)
End Sub

Private Sub Person_NameChan ged(ByVal sender As Object, ByVal e As
EventArgs)
' TODO: Consider defining a new EventArgs class that includes
person
RaiseEvent NameChanged(sen der, e)
End Sub

End Class

Private Shared WithEvents people As New PersonCollectio n

Private Shared Sub people_NameChan ged(ByVal sender As Object, ByVal e
As
System.EventArg s) Handles people.NameChan ged
Debug.WriteLine (sender, "NameChange d")
End Sub

Public Shared Sub Main()

Dim person1 As New Person
Dim person2 As New Person
Dim person3 As New Person

people.Add(pers on1)
people.Add(pers on2)
people.Add(pers on3)

person1.Name = "Person 1"
person2.Name = "Person 2"
person3.Name = "Person 3"

people.Remove(p erson3)

person3.Name = String.Empty

End Sub

You may also need to override Insert & other methods...

NOTE: In practice I would have PersonCollectio n.NameChanged use an
EventArgs
derived classt that included the Person object that changed, then the
sender
parameter to the event would be the PersonCollectio n itself...

--
Hope this helps
Jay [MVP - Outlook]
T.S. Bradley - http://www.tsbradley.net
"DraguVaso" <pi**********@h otmail.com> wrote in message
news:e5******** ********@TK2MSF TNGP15.phx.gbl. ..
| Hi,
|
| I have a Generic List, for instance: Public MyPersonnesDeCo ntact As New
| System.Collecti ons.Generic.Lis t(Of clsPersonne)
|
| My clsPersonne raises some events, and I want to be able to handle these
| events. The problem is: when using the WithEvents (Public WithEvents
| MyPersonnesDeCo ntact As New System.Collecti ons.Generic.Lis t(Of
clsPersonne))
| I get an error, saying "'WithEvent s' variable does not raise any
events.".
|
| Does anybody know how I could be able to handle events that happens in
the
| intances of the class in my Generic.List?
|
| Any help, hints, workarounds etc would be really appreciated!
|
| Thanks a lot in advance,
|
| Pieter
|
|

Oct 14 '05 #9
Pieter,
Here's a .NET 2.0 sample (VS 2005):

It uses System.Collecti ons.ObjectModel .Collection(Of T) for the base of the
collection. Collection(Of T) is the replacement for CollectionBase, just as
List(Of T) is the replacement for ArrayList.

---x--- cut here ---x---
'
' Copyright © 2005, Jay B. Harlow, All Rights Reserved.
'
Option Strict On
Option Explicit On

Public Class Person

Public Event NameChanged As EventHandler

Private ReadOnly m_id As Integer
Private m_name As String

Public Sub New(ByVal id As Integer)
m_id = id
End Sub

Public ReadOnly Property Id() As Integer
Get
Return m_id
End Get
End Property

Public Property Name() As String
Get
Return m_name
End Get
Set(ByVal value As String)
m_name = value
OnNameChanged(E ventArgs.Empty)
End Set
End Property

Protected Sub OnNameChanged(B yVal e As EventArgs)
RaiseEvent NameChanged(Me, e)
End Sub

Public Overrides Function ToString() As String
Return "Person(" & m_id & ", " & m_name & ")"
End Function

End Class
---x--- cut here ---x---
'
' Copyright © 2005, Jay B. Harlow, All Rights Reserved.
'
Option Strict On
Option Explicit On

Public Class PersonCollectio n
Inherits System.Collecti ons.ObjectModel .Collection(Of Person)

Public Event PersonNameChang ed As EventHandler(Of
PersonNameChang edEventArgs)

Protected Overrides Sub ClearItems()
For Each item As Person In Me
RemoveHandler item.NameChange d, AddressOf OnNameChanged
Next
MyBase.ClearIte ms()
End Sub

Protected Overrides Sub InsertItem(ByVa l index As Integer, ByVal item As
Person)
AddHandler item.NameChange d, AddressOf OnNameChanged
MyBase.InsertIt em(index, item)
End Sub

Protected Overrides Sub RemoveItem(ByVa l index As Integer)
Dim item As Person = Me(index)
RemoveHandler item.NameChange d, AddressOf OnNameChanged
MyBase.RemoveIt em(index)
End Sub

Protected Overrides Sub SetItem(ByVal index As Integer, ByVal item As
Person)
Dim itemOriginal As Person = Me(index)
RemoveHandler itemOriginal.Na meChanged, AddressOf OnNameChanged
AddHandler item.NameChange d, AddressOf OnNameChanged
MyBase.SetItem( index, item)
End Sub

Private Sub OnNameChanged(B yVal sender As Object, ByVal e As EventArgs)
Dim args As New PersonNameChang edEventArgs(Dir ectCast(sender,
Person))
OnPersonNameCha nged(args)
End Sub

Protected Overridable Sub OnPersonNameCha nged(ByVal e As
PersonNameChang edEventArgs)
RaiseEvent PersonNameChang ed(Me, e)
End Sub

End Class
---x--- cut here ---x---
'
' Copyright © 2005, Jay B. Harlow, All Rights Reserved.
'
Option Strict On
Option Explicit On

Public Class PersonNameChang edEventArgs
Inherits EventArgs

Private ReadOnly m_person As Person

Public Sub New(ByVal person As Person)
m_person = person
End Sub

Public ReadOnly Property Person() As Person
Get
Return m_person
End Get
End Property

End Class
---x--- cut here ---x---
'
' Copyright © 2005, Jay B. Harlow, All Rights Reserved.
'
Option Strict On
Option Explicit On

Public Module MainModule

Private WithEvents people As New PersonCollectio n

Public Sub Main()
Dim person1 As New Person(1)
Dim person2 As New Person(2)
Dim person3 As New Person(3)
people.Add(pers on1)
people.Add(pers on2)
people.Add(pers on3)

person1.Name = "Person 1"
person2.Name = "Person 2"
person3.Name = "Person 3"

people.Remove(p erson3)
person3.Name = String.Empty

people(0) = person3
person1.Name = String.Empty
person3.Name = "Jay"

people.Clear()
person1.Name = String.Empty
person2.Name = String.Empty
person3.Name = String.Empty

End Sub

Private Sub People_PersonNa meChanged(ByVal sender As Object, ByVal e As
PersonNameChang edEventArgs) Handles people.PersonNa meChanged
Debug.WriteLine (e.Person, "Person Name Changed")
End Sub

End Module
---x--- cut here ---x---

--
Hope this helps
Jay [MVP - Outlook]
T.S. Bradley - http://www.tsbradley.net
"DraguVaso" <pi**********@h otmail.com> wrote in message
news:OU******** ******@TK2MSFTN GP12.phx.gbl...
| Thanks! That's a great idea! :-)
|
| "Jay B. Harlow [MVP - Outlook]" <Ja************ @tsbradley.net> wrote in
| message news:eC******** *****@TK2MSFTNG P10.phx.gbl...
| > Pieter,
| > As Herfreid stated, your clsPersonne raises events List(Of T) does not.
| >
| > It sounds like you want List(Of T) to raise events based on the objects
it
| > contains. What I normally do is derive a class from the base collection
| > (List(Of T) in your case), then override the "add" and "remove" of the
| > collection to use AddHandler & RemoveHandler on each object being added
or
| > removed from my collection, so that the collection can raise the event
| > that
| > the individual items raise...
| >
<<snip>>
Oct 14 '05 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
1592
by: Umut Tezduyar | last post by:
Because of the fact that, handling events method ( IPostBackEventHandler.RaisePorstBackEvent method) is prior to OnPreRender method, i cannot handle the events of the controls that i am adding on the OnPreRender method. Is there a way for that. Can i manually tell asp.net page to check again if there is control that is post backing to the server. ex: Load IPostBackEventHandler.RaisePostBackEvent ( in this phase parameter is
5
1721
by: Jon B | last post by:
Hi There! How to handle the events of a dynamically added user control? e.g. I have following code... Dim myUserControl as Object = LoadControl("myFirstControl.ascx") myFirstControl fires LinkClicked event and I don't know how to handle that LinkClicked event from containing page.
2
1161
by: Christian Blackburn | last post by:
Hi Gang, Is there a way to return the handle of one's application when it's a sub_main module? Does it even have an associated handle? or just a processid? Also how can I get the handle of a string - variable? Thanks, Christian Blackburn
1
1039
by: neil rowe | last post by:
Hi all How do I handle the click event of a row in a standard .net data grid on a windows form ? Regards Neil
6
2949
by: anonymous | last post by:
hi all, I'm trying to use the capCreateCaptureWindow (see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_capcreatecapturewindow.asp) in a Windows Application Project. I want to pass Image as one of the parameter but I figure that an Image doesn't have a handle. Previously I had it working in a Web Application Project using the handle of a PictureBox. Is there any workaround? Please help and...
1
1882
by: Patrick Dugan | last post by:
Is it possible to get the handle of a running service? I have a program (ActiveX program) running in memory. When I start my service I need to pass the service's handle to that program in order to attach to it. I cannot use Me.Handle because there is no such information within a service application. I have tried this small routine:
1
2008
by: Bruce D | last post by:
I apologize...I'm new to VB .NET. I'm wondering if I can somehow convert the pointer to the handle of a DIB to the actual DIB? Below is the code that I use to get the pointer to the handle of a DIB. The code works great! Dim hdib As IntPtr hdib = EZTwain.Acquire(Me.Handle()) If hdib.Equals(IntPtr.Zero) Then .... Here's my problem...I'm trying to use this new property but it must be set
0
3238
by: aparnaa | last post by:
hi i am developing a web page in asp.net(VB) here i have dynamicaaly created a button. i have created this button in a procedure so that i can call it at varied places. however, i am not able to handle click event of this button. i have already made use of add handler...n had followed all the convention required.But on clicking the button the control goes to the page_load but not on the delegate function.please help i am also pasting part...
1
1113
by: msch-prv | last post by:
I would like to raise the selected event of an objectdatasource (ods) to retrieve some data. I tried to raise this event using a server button. I am at a loss as to how set up the RaiseEvent syntax arguments. Question: is it possible to call this event from a button server control? Thanks for any pointers. I tried variations of the following:
1
2821
by: RK800 | last post by:
could someone help me out with this?? i am creating a dropdown(dd2) dynamically inside a <div> , on the selected index event of another dropdown(dd1). somehow i am not able to handle or get the selectedindexchange event of dd2. i get the values inside dd2, but does not respond to any event. i am using the code is as below. Function getdatafromdb(ByVal s As String) As String Try
0
9537
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9367
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
9319
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9243
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
4599
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
4869
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3309
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
2780
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2213
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.