private void RefreshMenuItem( TreeListNode node, ServiceTreeDataSourceChangedEventArgs e) { if (node == null) { MenuItemHelper.Instance.Buttons[MenuItem.RefreshServiceList].Enabled = true; MenuItemHelper.Instance.Buttons[MenuItem.StartService].Enabled = false; MenuItemHelper.Instance.Buttons[MenuItem.StopService].Enabled = false; MenuItemHelper.Instance.Buttons[MenuItem.ServiceLogReload].Enabled = false; MenuItemHelper.Instance.Buttons[MenuItem.ViewHistoryLog].Enabled = false; } else { if (node.Tag is ServiceEntity serivce) { MenuItemHelper.Instance.Buttons[MenuItem.RefreshServiceList].Enabled = true; MenuItemHelper.Instance.Buttons[MenuItem.StartService].Enabled = serivce.Status == ServiceControllerStatus.Stopped; MenuItemHelper.Instance.Buttons[MenuItem.StopService].Enabled = serivce.Status == ServiceControllerStatus.Running; } else { MenuItemHelper.Instance.Buttons[MenuItem.RefreshServiceList].Enabled = true; MenuItemHelper.Instance.Buttons[MenuItem.StartService].Enabled = false; MenuItemHelper.Instance.Buttons[MenuItem.StopService].Enabled = false; } } }
private void RaiseDataSourceChanged(TreeListNode node) { if (OnDataSourceChanged != null && allowDataSourceChanged) { ServiceTreeDataSourceChangedEventArgs args; if (node == null || node.Tag == null) { args = new ServiceTreeDataSourceChangedEventArgs(null); } else { args = new ServiceTreeDataSourceChangedEventArgs( node.Tag as ServiceEntity); } OnDataSourceChanged(tlServices, args); RefreshMenuItem(node, args); } }