Articles → LIGHT SWITCH 2011 → Hide Menu And Ribbon Group In Lightswitch 2011

Hide Menu And Ribbon Group In Lightswitch 2011

Software Requirement

  1. Visual studio 2010 is installed on your machine.
  2. Visual Studio 2010 service pack 1 is installed on your machine.
  3. Microsoft Visual Studio Light switch 2011 is installed on your machine.

Technical Knowledge

  1. How to create projects in visual studio?
  2. How to create screens in lightswitch?
  3. What is screen's run event?
  4. What do you mean by visual parent (or child) of an element in Silverlight?
  5. What is the purpose of application.cs file?

Create A New Project And Add A New Screen

Picture showing the design screen of the editable grid screen
Click to Enlarge

Picture showing the default menu of the lightswitch application
Click to Enlarge

Write Code To Hide Controls

using System.Windows;
using System.Windows.Media;
using Microsoft.LightSwitch.Runtime.Shell.Implementation.Standard;
using Microsoft.LightSwitch.Threading;

namespace LightSwitchApplication.UserCode {
	public class RibbonAndMenuClass {

		private static DependencyObject FindControlByName(DependencyObject control, string name) {
			if (control.GetValue(FrameworkElement.NameProperty) != null && control.GetValue(FrameworkElement.NameProperty).ToString() == name) {
				return control;

			for (int i = 0; i < VisualTreeHelper.GetChildrenCount(control); i++) {
				var child = FindControlByName(VisualTreeHelper.GetChild(control, i), name);
				if (child != null) {
					return child;
			return null;

		public static void HideRibbonAndMenu() {
			Dispatchers.Main.Invoke(() = >{
				UIElement root = System.Windows.Application.Current.RootVisual;
				((NavigationView) FindControlByName(root, "NavigationView")).Visibility = Visibility.Collapsed;
				((RibbonCommandBar) FindControlByName(root, "HomeTabItem")).Visibility = Visibility.Collapsed;

Call The Method From Screen’S Run Method

Picture showing adding the EditableGrid_Run event in the screen
Click to Enlarge

using LightSwitchApplication.UserCode;
namespace LightSwitchApplication {
	public partial class Application {

		partial void EditableGrid_Run(ref bool handled) {


Picture showing the default menu hidden in the lightswitch application
Click to Enlarge

Posted By  -  Karan Gupta
Posted On  -  Friday, October 24, 2014


Your Email Id  
Query/FeedbackCharacters remaining 250