I have been writing software since I was a kid. My dad got me started with QBASIC, and I never stopped telling computers what to do since then.
In addition to being a software geek, I’m also a music geek. I’ve been playing classical piano since I was five, and studied music composition in college. I’m a firm believer that the thought processes involved with writing & performing music are very similar to the processes of designing & writing software.
I worked at Infragistics for a couple of years, and learned a lot about user interface programming from the masters at the WinForms Dev Lab in Long Island. When I saw WPF for the first time in late 2005, I knew that it was the future of UI development on Windows. I’ve been exploring WPF ever since, and love it more every day.
I post articles to the CodeProject in my spare time. You can view my list of articles here.


February 3, 2007 at 8:39 pm
So Josh, I just wanted to find out if you’ve ever thought about interviewing for Microsoft? We’ve got open positions for WPF and WPF/E evangelists right now. Let me know if this is something you’re interested in, and we can chat further…
Tim
February 6, 2007 at 4:43 pm
Hi Josh,
I just read about your resignment from your prior company. You and I had a couple of “cyber-exchanges” a while ago in these two threads (http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1025073&SiteID=1 and http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1000523&SiteID=1).
In case you are looking for job/work opportunities, plase take a look at our website (http://www.kodasoftware.com). I am trying to assemble a small team of WPF developers for current and future projects.
Obviously, I can’t compete with Microsoft , but you never know, bigger isn’t always better…
Tor.
February 8, 2007 at 4:21 pm
Regarding the Microsoft MVP Award Program
Dear Josh,
My name is Rafael M. Munoz. I’m a member of the Microsoft® Most Valuable Professional (MVP) team as a Community MVP relationship liaison (also known as “MVP Lead”) for Visual C#, Visual J#, Developer Security, Client Application Development and Windows Networking. I would love to talk to you about the MVP Program and your contributions to the Client Application Development technical communities (WinFX, Windows Forms, WPF) over the past year.
MVPs are recognized by Microsoft for their voluntary participation in offline and online technical communities. If you are not familiar with the MVP program you can learn more by visiting our web site at: http://mvp.support.microsoft.com. Our web site includes a Frequently Asked Questions (FAQ) section, http://mvp.support.microsoft.com/mvpfaqs, which provides answers to questions commonly asked about the MVP program and also provides a lot of good information describing the program.
Please contact me directly at [removed] and I look forward to talking to you further about the program.
Rafael M. Munoz
[removed]
February 11, 2007 at 5:15 pm
Hi Josh,
I’d like to talk to you about what you are doing with WPF. Please send me an email with your current address.
All the best,
Steve
February 13, 2007 at 8:32 am
Hi Josh,
I liked your DragCanvas sample very much.
I want your help.
Do you have any document on Custom conrol that will explain How to Write custom control along with their properties,Methods and Events.If possible can u share this with me.
Thanks in advanced…
February 14, 2007 at 2:57 am
Hey josh, 3 things…
First its nice to meet you, and thanks for posting help to me on the Avalon MSDN forums.
Second I have another question about that example of a nested listview in a listview as treeview items and couldn’t find any better way to get a hold of you directly. Basically I’m happy with the workaround you came up with but I would like to make it so that there is a listview for every item in the MAIN table but only 1 listview that holds all the data for the details table. I can’t get this to work because the listview is created for every single detail item since its part of a DataTemplate, any suggestions?
Third, you have inspired me to start a blog as well and I have linked to you. I will be uploading some of my own WPF stuff soon and you can be sure i’ll be joining that XBAP contest. (matthewlebo.wordpress.com)
Thanks
Matt
February 15, 2007 at 8:35 pm
Hi Josh,
Awesome idea on the WPF contest!
I want to up the ante even more for the winners … Infragistics will donate some killer WPF software if you’ll accept. We have 6 great controls coming out in V1 – you can get the skinny on each one of them here:
http://www.infragistics.com/hot/wpf.aspx#NetAdvantageforWPFBeta
Shoot me an email on jasonb@infragistics.com and let’s try to make this happen,
Great to see how things are going so awesome on your end,
Jason
March 14, 2007 at 8:44 am
Hi, I found the project you made about the draggable canvas on code project.
Few questions if you don’t mind?
1. I placed your code inside a Usercontrol created in VS 2005
Then I used the custom control inside another project. But once I tried to place
controls such as a rectangle inside the custom control like this:
Only the rectangle would display and not the dragcanvas.
2. Lastly, attributes like the background color couldn’t be set in tne custom control such as:
I guess it’s obvious that it would recognise this as a an attribute since it’s a custom control, but I don’t know how to create these attributes either?
So, I’d appreciate if you could give some help on this:)
May 10, 2007 at 4:31 am
Hi Josh,
I would love to send you a question by mail but I can’t find your email address:
Can you give me one ?
Thxs
Regards
-Vince
May 10, 2007 at 6:32 am
Vince,
You should post your WPF questions to the WPF Forum: http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=119&SiteID=1
Thanks,
Josh
May 21, 2007 at 8:47 pm
Hi Josh,
I saw a post of yours in the MSDN forums, and wanted to ask you about the NYTimes reader. I really like the network/treeview control used in the topic explorer. Is that something you guys built, or is it an available control. I also see a similar one used in the Wikipedia Explorer.
Thanks,
k
May 21, 2007 at 9:36 pm
Kevin,
That control is available in Kevin Moore’s Bag-o-Tricks. It is called the Graph. Here’s the link: http://wpf.netfx3.com/files/folders/controls/entry8196.aspx
Josh
May 22, 2007 at 3:26 am
Thanks very much Josh!
Aloha,
Kevin
May 28, 2007 at 9:23 am
*** NOTE ***
Please do NOT post programming questions here. They will be DELETED.
If you have a question about WPF, post it to the WPF Forum: http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=119&SiteID=1
Thanks,
Josh
July 2, 2007 at 10:35 am
Hey Josh,
Is there any way we can post jobs on your site for your readers? (I guess that’s what I’m doing here anyway.) We’re a software consulting company in Manhattan looking for smart WPF developers.
Check it out here: http://www.lab49.com/careers
Thanks,
Katie
July 27, 2007 at 12:24 pm
Dear Josh,
We are starting a russian developer community and want to provide our members with russian translations of the articles from your blog and CodeProject. Could you be so kind to give the permission to us? All copyright notes and links are preserved. Thanks!
Best Regards,
Alex Nesterov
July 27, 2007 at 12:32 pm
Alex,
Yes, feel free to translate my articles and blog posts if you want to. I appreciate the interest in my work. Please notify me when you have posted some translations of my material online. I would like to see what they look like in Russian.
Thanks,
Josh
July 30, 2007 at 4:36 pm
Hey Josh,
Wow, I didn’t know you worked at Infragistics. I’m using that library from 2005 so you probably wrote some of the controls I’m using! That’s cool!
Anyway – I actually had a question for you. I found a reference on another webpage to a blog post you wrote at your old blog in August 2006, called ‘”Specializing the Selected Item’s Data Template.” I am trying to do exactly that, but the blog now comes up 404. Any chance of you reposting that here so I can figure out how you did that? I can’t seem to get this to work for the life of me.
Thanks again for all your help!! I don’t know where I’d be without your work.. stumbling around in the dark, I’d guess..
July 30, 2007 at 5:48 pm
Patrick,
I dug up that demo app and wrote a quick post about it: http://joshsmithonwpf.wordpress.com/2007/07/30/customizing-the-selected-item-in-a-listbox/
The reason why my old blog posts no longer exist is because my previous employer deleted my blog when I left. I still can’t understand why they did that, but such is life.
Josh
August 13, 2007 at 7:50 am
Hello Josh!
How are you doing? My name is Becky Cohen and I manage the Northern NJ .NET User Group which takes place every 2nd Tuesday of every month at SetFocus in Parsippany, NJ (about 30 minutes outside of NYC). I am constantly on the look out for potential speakers and presenters for our User Group and I noticed that you are scheduled to speak at the NYC User Group this month.
I was wondering if you would be interested in speaking for our User Group sometime in the near future? We usually have a great turnout – about 50 attendees – to each meeting and it is a great way to network and meet other people interested in the programming industry. Please get back in touch with me at rcohen@setfocus.com and let me know. I would love to speak with you further about a possible speaking opportunity!
Thank you very much!
August 21, 2007 at 1:35 pm
Hi Josh,
you post great article and good posts of the wpf msdn forum… keep it up….
why don’t we open a google group together….
if you want send me on marlongrech@gmail.com…
September 11, 2007 at 3:21 pm
Hi Josh – great blog – I’m learning a lot from it!
I have a question about cascading selection controls – what’s the best/preferred way to do this in WPF? The example is a user makes a selection in a combobox, which causes another combobox to be automatically re-populated based upon the previous selection.
Thanks!
Chris
September 12, 2007 at 9:04 am
Oops – sorry about the programming question – I didn’t see the “don’t post programming questions here!” until after i had already posted the msg. I found the solution quickly in the WPF forums…
Chris
September 18, 2007 at 7:05 pm
Josh,
We’re looking to get the word out about our upcoming title, “WPF in Action” (by Arlen Feldman and Maxx Daymon) and your name came up. If you are interested, we’d like to make available to you a free copy of the Early Access version of this book for your review. Please let me know if you would like to receive this free PDF download and I’ll set it up. Currently chapters 1-8 are available.
Also, if you would like to receive a free copy of the paper book when it ships (Dec-Jan est.) please reply with your shipping address and I’ll get that in place as well.
Thanks,
– Ron Tomich
Director, Sales & Marketing
Manning Publications
http://www.manning.com
303-570-7711
September 20, 2007 at 1:17 am
hi this is neeraj here.can u have ur mail address.i want to talk to u regarding a win application.plz help
October 18, 2007 at 11:16 pm
http://www.wired.com/techbiz/startups/news/2007/10/compassbox
from kp
November 12, 2007 at 1:54 pm
Hello Josh, your work is great and would like any help you can give:
Wanted to know if anyone knew of a way to edit xml files from within blend…
Basically I created a blend project and databinded a treeview item with a string from an xml file, made the template a textbox, so the user can edit, but I need to know how those changes in the blend project (text edit) can be saved to the xml file? basically save the changes and validate the xml file.
Brennon from expressionsblend.com responded to my prevoius post from: http://msdn2.microsoft.com/en-us/library/ms754356.aspx
which was great, but I am having trouble updating my xml file,
Basically the situation is, I have an xml file that controls a separate app and you edit the xml file and the xml settings control the app and the apps UI.
I am trying to build an xml editor within blend. I want to import the xml file (+xml) then data bind a tree view item and define the template (each xml string) as a textbox so the user can edit that specific xml value. Then when they are done editing they can save the blend project and the settings will overwrite the xml file on their machine.
any help would be great…thanks again
November 12, 2007 at 1:56 pm
Ian,
I don’t answer tech questions on this messageboard. You should post that question to the WPF Forum instead. Thanks
Josh
November 13, 2007 at 8:54 pm
[...] in client app development, with a focus on WPF. As well as being an MVP, Josh is a big blogger on WPF, speaks regularly about WPF at conferences and community events, and he’s published a ton of [...]
December 13, 2007 at 2:05 pm
Josh,
We are seeing an increasing number of requests for Silverlight and WPF candidates. I’d love to connect with you regarding your contacts, and perhaps discuss the various opportunities we have available. FILTER, located in Seattle WA, is one of the primary providers of digital talent (from graphic design to development) to Microsoft and hundreds of companies along the west coast. I’ve had great luck connecting with experts like yourself, and look forward to hearing from you soon.
Warm regards,
—————————————————————————————————-
LAUREN MILAN TALENT MANAGER / FILTER STUDIOS
D 206.709.4934
T 206.568.8000
F 206.568.8001
FILTER PURE TALENT.
CREATIVE RESOURCES FOR BUSINESS
WE’RE MOVING! AFTER DECEMBER 21ST YOU’LL FIND US AT
1505 5TH AVE, SUITE 600, SEATTLE, WA 98101. MORE INFO TO COME…
“Recognizing the need is the primary condition of design.”
December 20, 2007 at 11:21 am
Hi Josh,
I am new to WPF and have created a custom control that takes forever to render when many of them are added to a wrap panel. I would very much appreciate your help if you could spare a moment.
Thanks,
Richard Mintz
rmintz@tgo.ca
December 29, 2007 at 2:48 pm
Hi Josh,
I am a PHP developer working with JS and AJAX. I have recently been offered a job working as a WPF designer. This is quite a big career change for me so I have started looking into your industry more and have been suprised at the lack of WPF jobs out there (UK based)… is this because the technology is still relatively new so not all companies have started using it? Basically I was hoping you could tell me what your opinion of where WPF is heading?
Thanks
Gary Bennion
December 30, 2007 at 1:37 pm
Gary,
I think WPF is taking a long time to gain traction, but I have definitely seen it being adopted more and more. Considering the large impact Silverlight will have on the industry once it becomes more feature-complete, I think WPF will be boosted in popularity because of the close parody between the two platforms.
Josh
December 30, 2007 at 2:12 pm
Thanks Josh – definate food for thought
January 3, 2008 at 5:32 pm
http://forums.infragistics.com/forums/p/1154/11722.aspx#11722
Any chance you ask your employers to fix this blatant bug? Seems a very low response community in comparison to Xceed etc..
February 14, 2008 at 10:54 am
Josh,
I’m just starting up my blog. I’d love you support http://bendewey.wordpress.com. Please stay tuned for more.
February 26, 2008 at 3:14 pm
Josh,
Thank you for providing a quick overview of your passion for advanced GUI development concepts with WPF. I tracked your profile down through searching my network in Linked IN. I was wondering if you could help. I have a client that is looking for a WPF expert to help them create there next generation algorithmic Portfolio trading application. all development will be done in WPF. As I saw your distaste of mundane financial services clients. This is a very exciting company working on the bleeding edge of technology. they see themselves as a Software development company that builds financial software for trading.
I was hoping to see if you or someone you know would be interested in this type of role. it is very long term and extremely stable. please shoot me an email if you would like to speak about this, or if you know someone, I can pay very large referral fees if you are not interested, but one of your colleagues are
thanks
Jan Swenson
SilverSearch Inc
February 26, 2008 at 3:20 pm
Jan,
I know Rich Altamura. He and I already went down this path.
Josh
April 22, 2008 at 11:20 pm
Josh,
Is there anyway to set a font (or any other style) to all children of a panel (e.g. StackPanel) at once?
Thanks
May 7, 2008 at 1:24 pm
Josh, please contact me. I’d be happy to have my company donate a couple of licenses for our WPF controls as prizes to the competition you’re running.
May 7, 2008 at 1:31 pm
Sorry Tim. Your company is a competitor with Infragstics, my employer. That would be a bad move on my part. Thanks anyways, though!
Josh
May 7, 2008 at 5:57 pm
Ah, I had not realised that all your community contributions were paid for by Infragistics. Competition aside, it’s rather sad that because of this, other WPF control vendors are not able to donate prizes to any community competitions you run.
Again I’d encourage you to contact me to discuss issues like this further; it’s rather irritating there’s no means to contact you on this website other than a public forum.
May 8, 2008 at 10:22 am
Tim,
I’m not going to risk putting myself in an undesirable situation at work so that you can advertise your product in my competition.
Josh
May 8, 2008 at 4:31 pm
Josh,
I know; we established that three messages ago and my offer of prizes for your competition is withdrawn. Still, as a fellow MVP and expert in WPF it would be good to get in touch with you, so this is why I am urging you to contact me, or provide a means of contact better than this ridiculous public forum.
Tim
June 19, 2008 at 9:32 am
Josh,
We’re working on various in-vehicle projects with a US auto maker and are seeking your expertise. Our entire solution is .NET based and we’re looking to take it to the next level with WPF.
Please contact me when you have a moment.
J
July 20, 2008 at 6:03 am
Hi,
I must write a program with WWF, I have some problems,
can you help me please?
Warm regards
July 27, 2008 at 4:05 am
Hi Josh:
Is there anyway to customize application at runtime, for example change colors and font…
example:
Hi
I would like to retrieve style name of control, via code.
Then I would like to change the retrived style in code again and save style to disk for later runs.
I need this to give customization feature to my end users.
Thanks and Regards
July 29, 2008 at 8:25 am
Hi Josh,
I read your article “Customize Data Display with Data Binding and WPF” on published on July on msdn magazine but we cannot diplay some figures. (Figure 1, Figure 2…)
Thanks and Regards,
Nicholas
July 29, 2008 at 8:28 am
Hi Nicholas,
Thanks for the heads up. Unfortunately, I am not able to adjust that article, since it is owned by MSDN Mag. I’ll check in with them.
Thanks,
Josh
September 2, 2008 at 11:13 pm
Josh,
Just a quick note on your Stretch a Expander Header (way back in Feb 2006). A xaml only solution to change the HorizontalAlignment of the ContentPresenter from Left to Stretch is listed below. The key to the solution is the Binding in the DockPanel which uses Mode=OneWayToSource. And Bea Costa said she couldn’t think of any use for OenWayToSource, sheesh, hehehe
BTW, I really enjoy your blogs…
Best Regards
Patrick Lindsey
September 18, 2008 at 4:26 pm
Hi Josh,
If you create part in your blog like question/answer you can make its more popular.
And I have first question for this part
There are many troubles with dictionaryresources if you want to use them not only in straight forward maneer. For example try to make generic.xaml theme with 2 merged dictionaries “Global.xaml” and “Control.xaml” and try to use resource from first dictionary in second one. Can you explain what I’m doing wrong and how can I solve this problem?
Thanks
September 23, 2008 at 8:10 am
Josh,
As I was wondering about posting or not my 1st article to CodePoject I posted a preview link to my blog in the Lounge:
http://www.galador.net/codeblog/
As it’s about WPF Marc (Clifton) had a few comments:
- it’s interesting
- maybe you should ask Josh if you really need to do what you did in this project?
So could you give some feedback?
Basically I’m trying to replace zillion of IValueConverter class with a single ScriptConverter.
What do you think of my post?
Thanks!
September 23, 2008 at 8:47 am
Lloyd,
Cool idea, though it’s been done before, or at least something equivalent has been done. Here’s some links:
http://www.fikrimvar.net/lestirelim/?p=15
http://11011.net/archives/000668.html
I think you should still write the article, though. It is always good to see another approach.
Josh
September 23, 2008 at 9:05 am
Josh….
I so love WPFIX…. I have to try it tomorrow night (it’s past bed time, I just got up to add some touch to my blog..)
In fact I have to try both…
Now I’m a bit disheartened for my article, but I guess I could use my (future, ahum) article as an occasion to mention them
the good thing is, now I know about those projects, thanks!
September 24, 2008 at 9:18 am
Hi Josh,
I studied those articles, particularly the one with Lambda expression as it was the one most appealing to me.
1st it is a very interesting extension and I would add it in my tool box.
2nd it would not solve my problem, in fact you will get a token undefined “Brushes”, and I don’t see how to fix it as those Dynamic class from MS are all so complex and I don’t really want to extends them.
Hower, building on this markup extension idea to generate converters, I made my own with the ScriptConverter.
In the end you can use an expression such as:
I’m going to update my blog and CodeProject article with this new information (later this week).
Do you have any idea on how to modify the article?
I am thinking of adding a few section at the bottom, but I fear people might miss out on these very interesting development…
September 24, 2008 at 9:20 am
I mean an expression such as (< > escaped):
<TextBlock Text=”{Binding}”
Background=”{Binding Converter={local:Script ‘if(value%2==0) Brushes.Red; else Brushes.Green;’, {x:Type Brushes}}}”/>
September 24, 2008 at 9:23 am
Unless the article has been edited by CP, if you’re logged in, there should be a Modify link at the top of the article. Click that and you can edit the article.
September 25, 2008 at 8:38 am
Hi Josh,
Here is a more interesting / up to date version:
http://www.galador.net/codeblog/post/2008/09/23/My-Last-IValueConverter.aspx
Which include a comparison with the LambdaExtension (and some other idea from it).
I cannot modify my article page anymore (on codeproject) but I submitted an updated HTML to them as they said in their welcoming article.
I hope you’ll enjoy the updated article!
And thanks for your input as well.
Cheers, Lloyd
September 25, 2008 at 1:56 pm
Josh,
I have a position coming open in Raleigh NC for someone with programming and analysis skills on WPF. Do you think you might be interested or know of anyone who might be?
I’d love to chat more.
Brandi
October 11, 2008 at 3:23 am
Dear Mr.Smith,
I am a fan of your WPF and ViewModel blogs, specially the ones related to the TreeView control … I’va been able to develop a nice looking Organization Chart for our corporation thanks to your advices and blog posts and I’d be more than happy to send you some of the snapshots I’ve taken.
Also, now that I’ve finished this aforementioned project, I’ve been assigned a much more adventurous one demanding an even more complicated TreeView layout with multiple levels of horizontal and vertical child nodes for each parent node in a way that I’m really hesitant if it is possible at all to do it via TreeView. So I was wondering if I could possibly contact you somehow and share the snapshots as well as a draft of my problematic TreeView layout to see if you could kindly impart me with your advices
Thanks,
Kaveh
October 17, 2008 at 3:17 pm
Your writings have been invaluable in helping me get introduced to WPF (among other things). Your MV-ViewModel based approach is something we’re starting to use with real success in our projects. Thank you for this great service you provide to so many of us geeks!
October 17, 2008 at 3:28 pm
Thanks a lot, BW. I really appreciate that!!