8. December 2011 11:49
To me personally, NuGet is one of the greatest additions to a .NET developer's life during the last years. It's simple to use, makes your life easier, and simply works. I like how quickly it is adopted by customers, friends and public projects, and extensively used everywhere. However, I often see that people do not know about all the available features and sometimes even create custom solutions to problems that are already solved by built-in options. In this post, I randomly pick three features you should know about when you're working with NuGet, and create your own packages. More...
20. November 2011 20:07
Similar to the idea behind my project "Your Last About Dialog" (YLAD) I have created an implementation of a generic options/settings dialog for Windows Phone. The goal is to make it as easy as possible for you to set up such a dialog, but at the same time keep all options to extend and customize it when required. The features in detail are:
- Uses reflection to support arbitrary objects as "data providers" for the options page. No need to implement custom interfaces or use special types – continue using your POCOs for your user and application settings.
- Use attributes to customize the behavior and looks of your individual options, in particular:
- Supports grouping of options into pivot items
- Supports sorting of options
- Supports validation
- Supports localization using standard resources mechanism
- Has custom features depending on the data type (e.g. input scope for strings etc.)
- Much more…
- Highly extensible component, in particular:
- Change existing views (editors) to your own
- Add support for additional data types – even your custom ones
- Implement custom validators for your particular needs
- Prepares and extracts all data on a background thread for maximum responsiveness
This initial release already supports a wide variety of data types, including bool, integral types (byte, short, int, long), floating types (float, double, decimal), DateTime, TimeSpan, strings, color and all enumerations. To learn more, please visit the project:
In the NuGet gallery ("Extras" extensions in the NuGet gallery)
For a quick overview and details on how to use the component, make sure to read the walkthrough.
As always, comments and feedback as well as feature requests and bug reports are very welcome.
4. November 2011 21:52
Inspired by a blog post from Jeff Wilcox back in July (here), I started creating a generic about dialog for Windows Phone based on his initial ideas and design. Over time I improved the code more and more, created new features and avoided pitfalls, and eventually added localization support. At this point I think it's a pretty handy piece of code that is also interesting for others to use in their applications, and it has proven to be robust and reliable by multiple applications in the Marketplace that use it. Remembering my own "reinventing the wheel" issues with about and help screens, I hope that this addition will indeed be "your last about dialog", serving all your requirements. Included features:
- Extracts all information about your app automatically (name, version, description etc.).
- Allows overriding all information with alternate fixed values.
- Shows a configurable list of hyperlinks to your web site(s) or email addresses etc.
- Shows a button that lets the user rate your app in the Marketplace.
- Supports additional pages (pivot items) to be added, containing local or remote content.
- Freely configurable fallback content for remote sources that cannot be retrieved.
- Supports both text (with auto-formatting/highlighting) and XAML content.
- Can be localized for any culture you want to support.
- Only loaded when the user requests it – zero memory/performance impact otherwise.
To learn more about the project and configuration options, please visit the documentation on CodePlex. The download package there contains the binary library and multiple sample configurations, and the available source code also has a small additional Windows Phone sample app that uses the dialog for demonstration. The more convenient way to pull the library into your project is to use the NuGet package.
YLAD – Your Last About Dialog:
In the NuGet gallery (recommended for installation)