?
Solved

C# to VB.Net

Posted on 2013-01-19
11
Medium Priority
?
557 Views
Last Modified: 2013-01-19
Hi Experts,

I am using the following code in VB.Net to use notify icon in my WPF application. I am using Win 7 64 Bit.

=========================================================
Friend WithEvents NotIco As System.Windows.Forms.NotifyIcon

Private Sub Window_Initialized(sender As System.Object, e As System.EventArgs) Handles MyBase.Initialized
        Dim IcoPath As String

        IcoPath = My.Settings.ApplicationIconPathWithIconName
        NotIco = New System.Windows.Forms.NotifyIcon()
        NotIco.Icon = New System.Drawing.Icon(IcoPath)
        NotIco.Visible = True
End Sub
===================================================================

Now I have 2 questions.

1. How to write the following line in VB.Net?
NotIco.MouseClick += new System.Windows.Forms.MouseEventHandler(NotIco_MouseClick);

If I write NotIco & then press "." no MouseClick event is there in the autocomplete lict box. How to do it?

2. If I use notify icon in WPF like this way, will it be a problem in XP SP3?

Please help,
Soumen
0
Comment
Question by:Soumen-Roy
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 4
11 Comments
 
LVL 9

Assisted Solution

by:sognoct
sognoct earned 400 total points
ID: 38796176
don't have vs2010 here but I've found this interesting article :

http://www.codeproject.com/Articles/36468/WPF-NotifyIcon

I never had any problem in running wpf application on xp sp3 right now ...
0
 

Author Comment

by:Soumen-Roy
ID: 38796197
@sognoct

I have gone through that link. I wanted to know how to convert that C# line to VB.Net as MouseClick is not available after "." in VB.Net
0
 
LVL 35

Expert Comment

by:Robert Schutt
ID: 38796237
For issue 1, type:
AddHandler NotIco.

Open in new window

Now the MouseClick will be there.
0
Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

 
LVL 35

Accepted Solution

by:
Robert Schutt earned 1600 total points
ID: 38796242
The full line will be:
AddHandler NotIco.MouseClick, AddressOf NotIco_MouseClick

Open in new window

0
 

Author Comment

by:Soumen-Roy
ID: 38796247
@robert_schutt:

As per your suggestion my code is as follows:

Friend WithEvents NotIco As System.Windows.Forms.NotifyIcon

Private Sub Window_Initialized(sender As System.Object, e As System.EventArgs) Handles MyBase.Initialized
        Dim IcoPath As String

        IcoPath = My.Settings.ApplicationIconPathWithIconName
        NotIco = New System.Windows.Forms.NotifyIcon()
        NotIco.Icon = New System.Drawing.Icon(IcoPath)
        NotIco.Visible = True

       NotIco.AddHandler
End Sub

But it is throwing error at the end of AddHandler, it expects a comma na d probably some more thing. Can you please a little elaborative?

Regards,
Soumen
0
 
LVL 35

Expert Comment

by:Robert Schutt
ID: 38796306
my first post specified the dot so you would see the property being shown.

my second post specified the whole line.
0
 
LVL 35

Expert Comment

by:Robert Schutt
ID: 38796307
o, I just saw your error: "NotIco.AddHandler" is not what I posted.
0
 
LVL 35

Expert Comment

by:Robert Schutt
ID: 38796317
here's how it looks for me:
captures
0
 

Author Comment

by:Soumen-Roy
ID: 38796335
@robert_schutt:

Thanx a lot, it worked :-).

Regards,
Soumen
0
 

Author Closing Comment

by:Soumen-Roy
ID: 38796342
Thanx Exterts,

You solved my problem nicely.

Regards,
Soumen
0
 
LVL 35

Expert Comment

by:Robert Schutt
ID: 38796347
Maybe this is not applicable for you because you just want to convert the code but normally the easier way to implement an event handler in VB.NET is to go to the form, click on the component (NotifyIcon will be at the bottom), go to properties (F4), then click on the lightning bolt icon at the top for events and double click in the value field for the event you want to handle. Here's another picture.capture2
0

Featured Post

Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Entity Framework is a powerful tool to help you interact with the DataBase but still doesn't help much when we have a Stored Procedure that returns more than one resultset. The solution takes some of out-of-the-box thinking; read on!
This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
In this video we outline the Physical Segments view of NetCrunch network monitor. By following this brief how-to video, you will be able to learn how NetCrunch visualizes your network, how granular is the information collected, as well as where to f…
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…
Suggested Courses

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question