How to receive event when user changes system's culture

.net, c#, cultureinfo

Solution

You can handle the `SystemEvents.UserPreferenceChanged` event:

void SystemEvents.UserPreferenceChanged(object sender, UserPreferenceChangedEventArgs e)
{
    // Regional settings have changed
    if (e.Category == UserPreferenceCategory.Locale)
    {
        ...
    }
}

Problem

When my application run with a specified culture. Don't close the application, user changes system's culture, ex: change number decimal separator from "." to ",". How to my application can catch this event. Thanks. Notes: C# 2.0, Windows Form.

Original source