Memoization using generics – Part 2
This is Part 2 of my series on Memoization. In Part 1 I described the basic principles behind memoization, and showed some examples on how to create an effective generic method to do memoization of methods with zero and one parameter. In this post I will show how to do memoization of methods with two parameters
Debugging an application hang or freeze
A sudden freeze in an application can in some cases be a rather cumbersome problem to solve. Many times we don't have any indications why the application freezes no matter if is a Java, C# or C++ application, web site or dll. In some cases we might have a log file to help us look for the source of the hang or freeze, but in many cases we don't have any indications of problem until we suddenly run in Release mode and far from our dev env!
Here I will try to give some guidelines on how to attack this problem.
Sending parameters with Caliburns ActionMessage
For the last two days we have been struggling with a rather peculiar problem in a Caliburn solution. In a ResourceDictionary we had defined a Popup with a ListBox containing some textblocks and buttons. The buttons are bound to a Presenter (Caliburn v1.1), and we tried to pass a parameter with the Message.
Why use Custom Control instead of User Control in WPF?
When I first started experimenting with WPF I was quite confused with the new custom control introduced in WPF. I did a quick Google search but never got the full understanding of the difference, but I read somewhere that in most cases a custom control was not necessary, so I just focused on the regular user control back then.
Getting started with Caliburn Part 2: Multiple Views on one ViewModel
The documentation and tutorials on Caliburn is still very limited, and is one of the biggest obstacles getting started with Caliburn right now. In this post I hope to fill some of the gaps I have seen in the lack of documentation by showing how you can easily hook up two Views to one ViewModel.
Extension methods in 60 seconds
Extension methods enables you to hook up extra methods to an already existing (and possibly sealed) class, without the need of subclassing or changing the original class. Lets say I have a class from a third party vendor I use, which contains information on persons
Working with globalization, string parsing and number formats in C#
On a project I attended a couple of years ago, we struggled a lot with string parsing, date formats and cultures. The product was shipped to among others China, Japan and US, and getting your code to work seamless in all culture formats can be a bit of a hassle if you are not fully familiar with how .Net and C# handles cultures and globalization. Back then I crated a small Windows Forms application to help me fully understand the details of conversions and parsing to avoid problems when our application was run on e.g. a Chinese laptop.