private void ChangeLayerOrder_Click(object sender, System.EventArgs e)
{
(MyMap.Layers["USA"] as ArcGISDynamicMapServiceLayer).LayerDrawingOptions = null;
DynamicLayerInfoCollection myDynamicLayerInfos = (MyMap.Layers["USA"] as ArcGISDynamicMapServiceLayer).DynamicLayerInfos;
if (myDynamicLayerInfos == null)
myDynamicLayerInfos = (MyMap.Layers["USA"] as ArcGISDynamicMapServiceLayer).CreateDynamicLayerInfosFromLayerInfos();
var aDynamicLayerInfo = myDynamicLayerInfos[0];
myDynamicLayerInfos.RemoveAt(0);
myDynamicLayerInfos.Add(aDynamicLayerInfo);
(MyMap.Layers["USA"] as ArcGISDynamicMapServiceLayer).DynamicLayerInfos = myDynamicLayerInfos;
(MyMap.Layers["USA"] as ArcGISDynamicMapServiceLayer).VisibleLayers = null;
// Changing VisibleLayers will refresh the layer, otherwise an explicit call to Refresh is needed.
//(MyMap.Layers["USA"] as ArcGISDynamicMapServiceLayer).Refresh();
}