This project is read-only.

WindowsBox is evil.

Jul 7, 2012 at 10:45 PM

I think that your WindowsBox is a metro UX anti-pattern. I think you should remove it from your library. You dont' want to be encouraging developers to display non-critical information in modal windows.

Jul 9, 2012 at 3:54 PM

Hi Justin,

First, thank you for helping me try to improve our toolkit. Is very gratifying to know that it somehow causes interest.

Yes, WindowsBox is a metro UX anti-pattern. The metro system window message  is also poor (i think).  The namespace  System.Windows.Controls.Primitives.Popup exists for wp7 and is also UX anti-pattern.

I'll be happy when we had better options to display popup messages. Do you have any suggestions to adjust the WindowsBox to the metro pattern?

At the end of the day what really worth it (I think) is: The end user (not developer) is king, he decides :-)

p.s : Sorry for my poor english.

Jul 9, 2012 at 4:36 PM

The popup is there mostly for controls like combobox. You basically have three example usages in your documentation on how to use the windowsbox. I will try to give ideas for how I would accomplish all three of those tasks, but in general I think you should have the content inline rather than as a separate modal dialog.

1. Popup message with text and OK button

In my opinion this should never be done, even in non-metro applications. If your only action is to click "ok" then this information is non-actionable. I would strongly recommend revealing this information to the user in some other fashion. Either just do what the message box is telling them will happen and let them see the result or put the information inline. I realize your examples are contrived but that is still what I would recommend to anyone attempting to use your control for that same reason. Instead of a button that pops up the text just show the text inline, instead of that button.

2. Popup with multiple choices

I strongly believe that prompting a user to confirm or cancel an action before they do it is not good UX. Instead I would recommend immediately applying their actions and making it easy to undo said action. So instead of showing a dialog with ok / cancel, just always do the ok action. Then provide a way to undo that action later.

3. Popup with input controls

Just put the controls inline instead. In places where you don't have the real-estate for the form inline then you should consider breaking up the screen into multiple horizontal screens. Perhaps one where you see the current settings then swipe to scroll horizontally and enter data. Essentially use the master/details design pattern and navigation to accomplish this same behavior in a more metro acceptable way.

4. Rounded corners

Part of the problem is that the corners are rounded and that it's not full screen. If it was full screen then it would be less bad but then you're basically just doing what navigation already gives you if you do that. 


No modal windows please :)

Jul 12, 2012 at 4:15 PM
Edited Jul 12, 2012 at 4:16 PM

Hello Justin,

I agree in part with his remarks.

The native messagebox in my opinion is a modal dialog with button OK, OK / Cancel etc with no  rounded borders and have many native applications (MS) using  dialog with style buttons OK / Cancel.. (Is not good UX Metro  design? The MS app´s not a good  a sample reference UX  ?) 

I understand that the app's should have a greater attention to the UX. While not a reality today i  will trying to meet a proposal (not a rule) to the Metro UX. When i  have something done in this direction will be notify you. 

Always feel free to submit your opinion, this project is open not only in the code :-)

again thank you and forgive me for my english