private void SelectedGearChanged(GearTypes obj)
        {
            SelectedGearType = obj;
            var folder = Environment.GetFolderPath(Environment.SpecialFolder.Personal);

            GearPieces.Clear();
            using (var conn = new SQLiteConnection(System.IO.Path.Combine(folder, "Gear2.db")))
            {
                var query = conn.Table <GearPiece>();

                if (SelectedGearType == GearTypes.None)
                {
                    foreach (var gear in query)
                    {
                        GearPieces.Add(gear);
                    }
                }
                else
                {
                    foreach (var gear in query.Where(gear => gear.GearType == SelectedGearType))
                    {
                        GearPieces.Add(gear);
                    }
                }
            }
        }
        private void NewGear()
        {
            if (_newGearViewModel == null)
            {
                _newGearViewModel = _newGearViewModelFactory();
            }

            var result = DialogNewGearService.ShowDialog(
                new[]
            {
                _newGearViewModel.CancelCommand, _newGearViewModel.SaveGearCommand
            },
                "New Gear",
                "Mapping",
                _newGearViewModel,
                SelectedGearType,
                this);

            if (result.Id == _newGearViewModel.SaveGearCommand.Id)
            {
                var folder = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
                using (var conn = new SQLiteConnection(System.IO.Path.Combine(folder, "Gear2.db")))
                {
                    GearPiece gearPiece = _newGearViewModel.NewGear;
                    gearPiece.GearType = SelectedGearType;
                    conn.Insert(gearPiece);
                    GearPieces.Add(gearPiece);
                }
            }
        }