diff --git a/runtime-workshop/exercises/dotNETWPF/Exercise 1 Map and Scene.md b/runtime-workshop/exercises/dotNETWPF/Exercise 1 Map and Scene.md
index 318b435..2ad7c3a 100644
--- a/runtime-workshop/exercises/dotNETWPF/Exercise 1 Map and Scene.md
+++ b/runtime-workshop/exercises/dotNETWPF/Exercise 1 Map and Scene.md
@@ -109,7 +109,7 @@ ArcGIS Runtime also supports 3D visualization. Everyone loves 3D! To conclude th
private bool threeD = false;
```
-11. In MainWindow.xaml we need to add a click event to the button to toggle to a 3D view. Visual Studio will create the for you when start typeing the Click= and you can tab to have the event handler created automatically.
+11. In MainWindow.xaml we need to add a click event to the button to toggle to a 3D view. Visual Studio will create the for you when start typing the Click= and you can tab to have the event handler created automatically.
```
@@ -120,7 +120,7 @@ ArcGIS Runtime also supports 3D visualization. Everyone loves 3D! To conclude th
{
}
```
-12. Next let's add the code to change the image on the button and toogle the the threeD variable to be true or false:
+12. Next let's add the code to change the image on the button and toggle the threeD variable to be true or false:
```
private void ViewButton_Click(object sender, RoutedEventArgs e)
{
diff --git a/runtime-workshop/exercises/dotNETWPF/Exercise 2 Zoom Buttons.md b/runtime-workshop/exercises/dotNETWPF/Exercise 2 Zoom Buttons.md
index 6ba9c72..6dca608 100644
--- a/runtime-workshop/exercises/dotNETWPF/Exercise 2 Zoom Buttons.md
+++ b/runtime-workshop/exercises/dotNETWPF/Exercise 2 Zoom Buttons.md
@@ -107,15 +107,24 @@ This portion of the exercise will teach you how to use _camera controllers_ in A
```
-1. Next we need to creat a new button and put it on the UI. So in MainWindow.xml, in the add a new area to put the next set of buttons in on the UI. We will want a border, stackpanel, and a new button using the images we added above.:
+1. Next we need to create a new button and put it on the UI. So in MainWindow.xaml, in the add a new area to put the next set of buttons in on the UI. We will want a border, stackpanel, and a new button using the images we added above. Set the button's `IsEnabled` property to false so that it can't be clicked until the user has toggled to 3D at some point. Here is the code to insert in MainWindow.xaml:
```
-
-
-
-
+
+
+
+
+ ```
+
+1. In your 2D/3D toggle button listener, which we called `ViewButton_Click` in Exercise 1, you probably have an `if` block that means the user is toggling from 2D to 3D. If it is the first time that 3D has been enabled, you have a code block that creates a new `Scene`. In that same block, enable your new lock focus button:
+
+ ```
+ LockButton.IsEnabled = true;
```
1. Add a click event to the button called LockButton_Click and in the MainWindow.cs it looks like this:
diff --git a/runtime-workshop/solutions/dotNetWPF/Ex2_ZoomButtons/Ex2_ZoomButtons/MainWindow.xaml b/runtime-workshop/solutions/dotNetWPF/Ex2_ZoomButtons/Ex2_ZoomButtons/MainWindow.xaml
index 97b1246..314edee 100644
--- a/runtime-workshop/solutions/dotNetWPF/Ex2_ZoomButtons/Ex2_ZoomButtons/MainWindow.xaml
+++ b/runtime-workshop/solutions/dotNetWPF/Ex2_ZoomButtons/Ex2_ZoomButtons/MainWindow.xaml
@@ -32,7 +32,7 @@
-
+
diff --git a/runtime-workshop/solutions/dotNetWPF/Ex2_ZoomButtons/Ex2_ZoomButtons/MainWindow.xaml.cs b/runtime-workshop/solutions/dotNetWPF/Ex2_ZoomButtons/Ex2_ZoomButtons/MainWindow.xaml.cs
index ccb22c4..f716263 100644
--- a/runtime-workshop/solutions/dotNetWPF/Ex2_ZoomButtons/Ex2_ZoomButtons/MainWindow.xaml.cs
+++ b/runtime-workshop/solutions/dotNetWPF/Ex2_ZoomButtons/Ex2_ZoomButtons/MainWindow.xaml.cs
@@ -56,6 +56,9 @@ private void ViewButton_Click(object sender, RoutedEventArgs e)
sceneSurface.ElevationSources.Add(elevationSource);
// apply the surface to the scene
sceneView.Scene.BaseSurface = sceneSurface;
+
+ // Exercise 2: Enable the lock focus button
+ LockButton.IsEnabled = true;
}
//Once the scene has been created hide the mapView and show the sceneView
mapView.Visibility = Visibility.Hidden;
diff --git a/runtime-workshop/solutions/dotNetWPF/Ex3_FLayer/Ex3_LocalFeatureLayer/MainWindow.xaml b/runtime-workshop/solutions/dotNetWPF/Ex3_FLayer/Ex3_LocalFeatureLayer/MainWindow.xaml
index 97b1246..314edee 100644
--- a/runtime-workshop/solutions/dotNetWPF/Ex3_FLayer/Ex3_LocalFeatureLayer/MainWindow.xaml
+++ b/runtime-workshop/solutions/dotNetWPF/Ex3_FLayer/Ex3_LocalFeatureLayer/MainWindow.xaml
@@ -32,7 +32,7 @@
-
+
diff --git a/runtime-workshop/solutions/dotNetWPF/Ex3_FLayer/Ex3_LocalFeatureLayer/MainWindow.xaml.cs b/runtime-workshop/solutions/dotNetWPF/Ex3_FLayer/Ex3_LocalFeatureLayer/MainWindow.xaml.cs
index f0005cc..26bc95e 100644
--- a/runtime-workshop/solutions/dotNetWPF/Ex3_FLayer/Ex3_LocalFeatureLayer/MainWindow.xaml.cs
+++ b/runtime-workshop/solutions/dotNetWPF/Ex3_FLayer/Ex3_LocalFeatureLayer/MainWindow.xaml.cs
@@ -70,6 +70,9 @@ private void ViewButton_Click(object sender, RoutedEventArgs e)
sceneView.Scene.BaseSurface = sceneSurface;
sceneView.Scene = myScene;
+ // Exercise 2: Enable the lock focus button
+ LockButton.IsEnabled = true;
+
_sceneLayer = new ArcGISSceneLayer(new Uri(SCENE_SERVICE_URL));
myScene.OperationalLayers.Add(_sceneLayer);
diff --git a/runtime-workshop/solutions/dotNetWPF/Ex4_Buf_Query/Ex4_BufferAndQuery/MainWindow.xaml b/runtime-workshop/solutions/dotNetWPF/Ex4_Buf_Query/Ex4_BufferAndQuery/MainWindow.xaml
index 66d729c..506e2f0 100644
--- a/runtime-workshop/solutions/dotNetWPF/Ex4_Buf_Query/Ex4_BufferAndQuery/MainWindow.xaml
+++ b/runtime-workshop/solutions/dotNetWPF/Ex4_Buf_Query/Ex4_BufferAndQuery/MainWindow.xaml
@@ -38,7 +38,7 @@
-
+
diff --git a/runtime-workshop/solutions/dotNetWPF/Ex4_Buf_Query/Ex4_BufferAndQuery/MainWindow.xaml.cs b/runtime-workshop/solutions/dotNetWPF/Ex4_Buf_Query/Ex4_BufferAndQuery/MainWindow.xaml.cs
index 8f2e648..320d92d 100644
--- a/runtime-workshop/solutions/dotNetWPF/Ex4_Buf_Query/Ex4_BufferAndQuery/MainWindow.xaml.cs
+++ b/runtime-workshop/solutions/dotNetWPF/Ex4_Buf_Query/Ex4_BufferAndQuery/MainWindow.xaml.cs
@@ -77,6 +77,9 @@ private void ViewButton_Click(object sender, RoutedEventArgs e)
sceneView.Scene.BaseSurface = sceneSurface;
sceneView.Scene = myScene;
+ // Exercise 2: Enable the lock focus button
+ LockButton.IsEnabled = true;
+
_sceneLayer = new ArcGISSceneLayer(new Uri(SCENE_SERVICE_URL));
myScene.OperationalLayers.Add(_sceneLayer);
diff --git a/runtime-workshop/solutions/dotNetWPF/Ex5_Routing/Ex5_Routing/MainWindow.xaml b/runtime-workshop/solutions/dotNetWPF/Ex5_Routing/Ex5_Routing/MainWindow.xaml
index 2ad94bc..828f219 100644
--- a/runtime-workshop/solutions/dotNetWPF/Ex5_Routing/Ex5_Routing/MainWindow.xaml
+++ b/runtime-workshop/solutions/dotNetWPF/Ex5_Routing/Ex5_Routing/MainWindow.xaml
@@ -39,7 +39,7 @@
-
+
diff --git a/runtime-workshop/solutions/dotNetWPF/Ex5_Routing/Ex5_Routing/MainWindow.xaml.cs b/runtime-workshop/solutions/dotNetWPF/Ex5_Routing/Ex5_Routing/MainWindow.xaml.cs
index 04103ad..d485df9 100644
--- a/runtime-workshop/solutions/dotNetWPF/Ex5_Routing/Ex5_Routing/MainWindow.xaml.cs
+++ b/runtime-workshop/solutions/dotNetWPF/Ex5_Routing/Ex5_Routing/MainWindow.xaml.cs
@@ -129,6 +129,9 @@ private void ViewButton_Click(object sender, RoutedEventArgs e)
// apply the surface to the scene
sceneView.Scene.BaseSurface = sceneSurface;
+ // Exercise 2: Enable the lock focus button
+ LockButton.IsEnabled = true;
+
sceneView.Scene = myScene;
_sceneLayer = new ArcGISSceneLayer(new Uri(SCENE_SERVICE_URL));