ok, so you just made one mistake. You did everything right up until the last point.
You created the GPSReceive. You created the GGA message (ggs) and received the data from the GPSReceive.
Then, you set the textbox to the next ReceiveGGA. What this line:
label1.Text = gps.ReceiveGGA();
does is tells the compiler to use the MSG_GGA class's ToString method and store that in the label. It doesn't look like the MSG_GGA ToString method was overwritten, so it probably was showing up as something like
First, you need to use ggs. Then, you need to use it's methods to parse the GGA method.
You can do any number of things as found here: MSG_GGA Struct Reference
it could look like:
label1.Text = ggs.Latitude + ggs.NS_Indicator + "," + ggs.Longitude + EW_Indicator;