What is it that's not working? Do you not get a "selected" class in the Html ? Or is it your css that's the problem?? The links you have provided all seems like working examples.
I've never tried this, but you should be able to get the current "page" like this:
String controller = String.Empty;
if (ViewContext.RouteData.Values.ContainsKey("controller")) {
controller = (String)ViewContext.RouteData.Values["controller"];
}
String action = String.Empty;
if (ViewContext.RouteData.Values.ContainsKey("action")) {
action = (String)ViewContext.RouteData.Values["action"];
}
String area = String.Empty;
if (ViewContext.RouteData.DataTokens.ContainsKey("area")) {
area = (String)ViewContext.RouteData.DataTokens["area"];
}
Then it should be a matter of casing and comparing these information with the links you create.