Position the PopupMenu for Drag And Drop Operations in Windows Store Apps

Preface Sometimes it is helpful to open a PopupMenu when the user drops items on a destination, e.g. to ask the user if the items should be copied or moved. I’d like to open the PopupMenu exactly where the user released the mouse / finger, means put the upper left …

Considerations Regarding Building a FileSystemWatcher for Windows Store Apps

Preface Unfortunately, .NET for Windows Store apps does not provide a FileSystemWatcher class. Nevertheless, one might want get notified when a folder, or file in a folder, has been changed. This post presents some points I found worth to consider when I implemented a FileSystemWatcher for Windows Store apps. Because …

VisualTreeHelper Extensions for Windows Store Apps

Preface The VisualTreeHelper “provides utility methods that can be used to traverse object relationships (along child-object or parent-object axes) in the visual tree of your app.” In this post I will show two extensions to VisualTreeHelper. Since you cannot create an instance of VisualTreeHelper, these are not extension methods from …

Discover Properties of Storage Items in Windows Store Apps

Preface Sometimes it is helpful to discover some or all properties of storage items (StorageFile, StorageFolder). These classes implement the interfaces IStorageItem and IStorageItemProperties. IStorgeItem.GetBasicPropertiesAsync gets an object that provides access to the basic properties of an item. IStorageItemProperties.Properties gets an object that provides access to the content-related properties of …

MessageBox for Windows Store Apps in C# / XAML

Preface The replacement of MessageBox for Windows Store apps is the class MessageDialog. This class is fine as long as you do not need more than three options the user can choose from. In technical words, MessageDialog allows only up to three commands. At the time of writing, this is …

BusyIndicator for Windows Store Apps in C# / XAML

Preface The BusyIndicator for Windows Store apps is a variation of the Busy-Indicating Dialog for Windows Store apps. The motivation for creating such a control is almost the same. No such a control is available. And I want to make sure the user cannot start a new task while a …

Busy-Indicating Dialog for Windows Store Apps in C# / XAML

Preface Some of you might know the BusyIndicator from the WPF Toolkit or from Silverlight. I was using this control in Silverlight to disable user interaction while the application was performing some long running operations. This makes it really easy to make sure the user will not start a new …

Simple and Generic ICommand Implementation for Usage in XAML

Preface The Commanding Overview says “Commanding is an input mechanism in Windows Presentation Foundation (WPF) which provides input handling at a more semantic level than device input. Examples of commands are the Copy, Cut, and Paste operations found on many applications.” Well, one should extent the definition and mention Windows …

Home-made Private Accessor for Visual Studio 2012+

Why Home-made? Short answer: Starting with Visual Studio 2012, private accessors cannot be created any more by the IDE. It seems that this does not bother too many people. The ‘Bring Back Private Accessor’ suggestion on UserVoice has not found any supporters right now. Nevertheless, I still need access to …

Unit-Testing of Private Async Methods with Visual Studio

Description Given there is the need to unit-test a private async method. The class to be tested might look like this: public ClassWithPrivateAsyncMethod { // Some stuff private async Task PrivateMethodAsync ( string input ) { // Call some async framework method var result = await SomeFrameworkMethodAsync(input); // do something …