// this way MyDataStructure.GetButton(44).Text = "Hello"; MyDataStructure.GetButton(44).BackColor = Color.Blue; // vs this way Button b = MyDataStructure.GetButton(44); b.Text = "Hello"; b.BackColor = Color.Blue ;this might be considered an "alternative" way to set these properties (as opposed to a "workaround"). But what if the method you're calling does other things before it returns it's object. And what if you could only call that method once (because you couldn't have those "other things" execute more than once). Then, this would be the *only* way to do it. And for readability, I would most likely have done it that way to begin with ... and that was most likely your point. With/Endwith is a readability issue more than anything else. So, we're talking semantics really.