This is possible in VB.NET 10:
Dim dict = New Dictionary(Of Integer, String) From {{ 1, "Test1" }, { 2, "Test1" }}
Unfortunately IIRC VS 2008 uses VB.NET 9 compiler which doesn’t support this syntax.
And for those that might be interested here’s what happens behind the scenes (C#):
Dictionary<int, string> VB$t_ref$S0 = new Dictionary<int, string>();
VB$t_ref$S0.Add(1, "Test1");
VB$t_ref$S0.Add(2, "Test1");
Dictionary<int, string> dict = VB$t_ref$S0;