Changing link properties

I am in the process of setting up a way for users to change the properties of a link that they click on. I have figured out how to do this with a wierd exception. When I change the values for whatever link I clicked on, all the links properties change. I am doing the following code:
protected void linkApplyButton_Click(object sender, EventArgs e)

GoLink link = MyView.PickObject(true, false, MyView.LastInput.DocPoint, true) as GoLink; if (link == null) {
link = MyView.Selection.Primary as GoLink;
} if (link != null) {
link.PenWidth = (float)w; link.Style = (GoStrokeStyle)ls; link.Pen.DashStyle = (System.Drawing.Drawing2D.DashStyle)ds; link.HighlightPenWidth = (float)w + 6f; link.HighlightWhenSelected = false; and so on...
} This is the same code that I use on nodes, where it seems to work fine. So there must be some minor point I am missing as far as the links go. Thanks for your help.