Split a string and keep the delimiter, a Tokenizer

Sometimes there isn’t a ready class or method to use in the .NET framework and you actually have to do some programming yourself. Alternatively you search and ask questions if it is done before.
There was a question on the MSDN forums asking how to return the delimiter with the String.Split result.
I ended up writing a small sample to do it and I thought I’d share it here. It is basic and just demonstrates the general idea how it can be implemented. It is compiling and running!

Tokenizer.cs (1.77 kb)

Don’t miss the submission deadline

I have just came up with my idea for the Made In Express Contest. Actually I have two ideas and I am not sure which one I will submit. One if kind of cool and the other is a bit more useful. I will probably go with the one I think is more fun.
The deadline is 30th of april so if you want to participate you should submit your idea soon!
Edit: I just re-read the rules. Multiple submissions allowed! I will submit both of my ideas.

Only access WebBrowser.Document after DocumentCompleted event

The last couple of days I have stumbled upon a similar problem from different users on the MSDN forums.
It seems to be a problem that the Document property of the WebBrowser control is accessed before DocumentCompleted event has been raised. This will give you a HtmlDocument instance that is as good as empty and it does not represent the document that it will be when it is completed.
After the web browser control has started to navigate only access the Document, DocumentText and DocumentStream properties after DocumentCompleted event has been raised.
The MSDN article for the DocumentCompleted event contains example code how to implement the event handler.

How to find MSDN articles quickly, with google

When I want to find out something that should be in MSDN Online I usually use Google. I add msdn to find general information and msdn2 to find .NET framework 2.0 information.
If I need to find something about the web browser control I would do the following search.
Maybe I need to find something about the IEnumerator interface
If I would like to see information about .NET 2.0 IEnumerator

Frustrating application

At work I use PowerDesigner to work with the physical model of databases. It is a quite powerful tool but it is also quite bad, slow, buggy, non-intuitive, non-compliant. Almost crap in other words. 
It has a lot of important settings in windows that are canceled with escape without asking if changes should be kept or discarded.
When consolidating my changes it leaves me with a non-responsive user interface and takes more than 30 minutes, up to an hour, to complete.
I have been losing changes lately, resulting in generated alter scripts to be incomplete and the application is broken. I can see that I did actually do the changes necessary because we save a copy of the preview in source control.
Several times the model has become broken and I have had to get a older copy, track all changes since that copy and reapplied them.
Of course next version will be more stable and faster. I keep my PowerDesigner needs to a minimum.