Bookmark and Share Share...    Subscribe to this feed Feed   About me...


Download WPF Inspector and get the insight!



Download WPF Inspector 0.9.5 (Beta)

My motivation

While developing WPF applications I often had difficulties to see what is excatly going on in there. What is the DataContext of a particular element? Why is that data binding not working? On what element do I have binding errors? Why is this trigger not active?. I wanted to build a tool that helps me in my daily work to get around this typical issues...

There are some pretty powerful tools out there that do a good job, like Snoop or Mole. But I wanted to add some more functionality. So I started the "WPF Inspector" project.

It's still a bit buggy and can cause some side effects while inspecting your application, but I think its really helpful and time to share.

Just download it and try it out. If you have any feedback or feature requests, feel free to contact me.

Start to inspect an application

Start the WPF inspector from your startmenu. WPF Inspecor will automatically list all running 32-bit and 64-bit WPF applications. Double click on one, or choose "inspect" to start the inspection.

Browse the logical and visual tree

After the inspector has been sucessfully hooked into your application, a window opens, that shos you the elements of your application. You can navigate through the visual and logical tree and see properties, datacontext, resources and triggers.

Find elements directly in the application

You can use the mouse to hover over the inspecting application by holding the CTRL key pressed to automatically select the element below the mouse. A red or blue outline indicates the selected element, depending if you are have the visual or the logical tree browser active.

See what's in the DataContext

By using the WPF Inspector it's very easy to see what data structure is inherited to a specific element by the data context. Just select the element and switch to the DataContext tab. You can even change editable values from your data model.

Debug Triggers

Triggers are a very flexible and powerful thing, but they are event hard to debug. WPF Inspector allows you to directly see all conditions and values of a trigger and check if he is currently active or not. This makes life a lot easier!

Check your application against prooven WPF design principles

WPF Inspector includes a set or rules that check your application against some design principles. The rules are divided into the categories functionality, performance and maintainability. The found issues are categorizes into tree levels of severity. My favorite rule is the databinding error checker. It shows you excactly what property on what element failed to bind!



Version History

  • WPF Inspector 0.9.5
    • Fixed issue with logical tree selection
    • Improved adorner for grids
    • Added property editor for GridLengths
    • Fixed issue with theming
  • WPF Inspector 0.9.4
    • Fixed layout recursion issue
    • Application Theme switcher
    • Size changer (resize to common sizes)
    • Highlighting of changed properties
    • Breakpoints on property changes
    • Style explorer
    • Lot of bugfixes
  • WPF Inspector 0.9.3
    • Re-evaluating rules when a value changed
    • Refactored rule engine
    • Performance improvements
  • WPF Inspector 0.9.2
    • Fixed some styling issues
    • Added Introduction Dialog on first starup
    • Changed installer package type to 32-bit



 Comments on this article

Show all comments
Steve
Commented on 1.July 2010
Are there any plans for .NET 4.0 support?
Mike Strobel
Commented on 1.July 2010
+1 for .NET 4 support! I'd be glad to help in any way I can.
Christian Moser
Commented on 2.July 2010
Hi Steve and Mike,

First I have to fix a lot of issues for version 1.0 :-) But then I will shurely come up with a version that supports .NET 4.0.

If you have any other ideas or feature requests, just let me know.

Greetings
Christian
Tim
Commented on 4.July 2010
Hey christian!
I really like the look of the way you've styled your buttons.
I've been trying to create a simular style myself, but i havent really had much luck, and there also isnt many tutorials available.
it would be really cool if you could maybe share the style for your buttons and maybe a few other UI elements and maybe annotate them or whip up some type of tutorial?
that would help me and im sure alot of other people

thanks alot (:
Kevin
Commented on 5.July 2010
Awesome tool!! way better that snoop. keep up the good work. Christian! thanks a lot!
David
Commented on 7.July 2010
Hello, thanks for this great app!. Any chance to use it with XBAP applications?
Thanks, David
Christian Moser
Commented on 8.July 2010
Hi David,
unfortunately not yet, but that's a good remakt. I will try to make it work also for XBAPs in a future version.

Greetings
Christian
David
Commented on 9.July 2010
Thanks!
Stefan Barthel
Commented on 20.July 2010
Awesome tool! After hours of try and error the Inspector helped me fixing a data binding issue within 10 mins... Thanks!
Mary
Commented on 22.July 2010
When attempting to inspect MetroTwit (www.metrotwit.com) with v0.9.3, a dialog window is displayed with the following message:

Application inspection failed.
Object reference not set to an instance of an object.
Curry
Commented on 23.July 2010
Object reference not set to an instance of an object.
Christian Moser
Commented on 23.July 2010
Hi Mary and Curry,
I am working on this issue. It will be fixed in the next version.

Greetings
Christian
Brandon Truong
Commented on 29.July 2010
I have the same error "Object reference not set to an instance of an object."
Hope to see the next version soon.
Mahesh Kumar R
Commented on 29.July 2010
When I launch the application, on start up I'm getting this error.
Cannot create instance of 'SelectorWindow' defined in assembly 'Inspector, Version=0.9.4.0, Culture=neutral, PublicKeyToken=null'. Exception has been thrown by the target of an invocation. Error in markup file 'UserInterface/SelectorWindow.xaml' Line 1 Position 9.

any clue-winxp,
Christian Moser
Commented on 29.July 2010
Hi Mahesh,
can you try out if the problem still exists with version 0.9.5. Maybe it was a corrupt installation. Please make sure that you have .NET 3.5 SP1 installed!
yinru
Commented on 30.July 2010
Hi, Chris:
I launched excel which has Excel addin (written in WPF), then I started WPF inspector. It recognizes excel add in, however it shows nothing, no properties, no DataContext, no resources, no Triggers. I also tried snoop, the same. I wonder if you can add support to COM Add In written in WPF in the future? thanks
Christian Moser
Commented on 30.July 2010
Hi Yinru,

thanks for your feedback. I currently have the same problem with ClickOnce applications. I try to fix that in a future version.

Greetings
Christian
Mike Strobel
Commented on 3.August 2010
Hi Christian,

I love your WPF Inspector utility. Have you considered open-sourcing it on CodePlex? It's always nice when we can contribute back to the utilities that we get so much use out of :).

Cheers,
Mike
Rik Robinson
Commented on 4.August 2010
This looks great and was looking forward to it, but it does not detect my application as a WPF application. What criteria does it use to make the decision whether it's a WPF app or not?
Nagamahendra
Commented on 11.August 2010
Hi,

The site is too good.I am new to WPF . I just want to Know What is this Inspector.And What is the use of this tool . I want to know , what are all prerequisite softwares need to be installed in my System or laptop to run this tool.

Thanks
Nagamahendra.
Erick
Commented on 25.August 2010
I have a WPF window hosted by a WinForm ( because I was having keyboard entry issues). The Winform is called from an Excel VSTO add-in. Inspector sees my WPF Window. After running the "inspect", Inspector has no contents listed. Any "Ctrl" hit after that causes Excel to crash
Erick
Commented on 25.August 2010
I have a WPF window hosted by a WinForm ( because I was having keyboard entry issues). The Winform is called from an Excel VSTO add-in. Inspector sees my WPF Window. After running the "inspect", Inspector has no contents listed. Any "Ctrl" hit after that causes Excel to crash
Andrew
Commented on 26.August 2010
Would be GREAT if this could support .NET 4 and specifically debugging binding issues in the new DataGrid control.

Name
E-Mail (optional)
Comment
About Christian Moser