internal static void UninstallSettingsButton()
{
Application.Current.Dispatcher.Invoke(
new Action(
() =>
{
Window mainWindow = Application.Current.MainWindow;
var tab = mainWindow.FindName("tabControlMain") as TabControl;
if (tab == null) return;
var infoDumpTab = tab.Items[0] as TabItem;
if (infoDumpTab == null) return;
var grid = infoDumpTab.Content as Grid;
if (grid == null) return;
SplitButton FunkyButton = grid.FindName("Funky") as SplitButton;
if (FunkyButton != null)
{
Logger.DBLog.DebugFormat("Funky Button handler added");
}
else
{
SplitButton[] splitbuttons = grid.Children.OfType<SplitButton>().ToArray();
if (splitbuttons.Any())
{
foreach (var item in splitbuttons)
{
if (item.Name.Contains("Funky"))
{
FunkyButton = item;
break;
}
}
}
}
if (FunkyButton!=null)
{
grid.Children.Remove(FunkyButton);
}
}
)
);
}