private void Button_Click(object sender, RoutedEventArgs e) { string uid = (sender as Button).Uid; positionError.Visibility = System.Windows.Visibility.Collapsed; SuccessMessgage.Visibility = System.Windows.Visibility.Collapsed; saveButton.Visibility = System.Windows.Visibility.Visible; if (dispathTimer != null) { dispathTimer.Stop(); dispathTimer = null; } if (uid == "addNew") { dgPosition.SelectedItem = null; toEditPosition = null; } if (uid == "rowEdit") { pawnguardDb = new PawnGuardDBDataContext(); toEditPosition = pawnguardDb.Positions .SingleOrDefault<Position>(pos => pos.id.ToString() == (sender as Button).Content.ToString()); dgPosition.SelectedItem = toEditPosition; VisualStateManager.GoToElementState(this.LayoutRoot, "ShowState", true); } if (uid == "closePanel") { VisualStateManager.GoToElementState(this.LayoutRoot, "HideState", true); Page_Loaded(sender, e); } if (uid == "deleteAll") { if (toDeletePosition.Count > 0) { pawnguardDb = new PawnGuardDBDataContext(); List<Position> deletePosition = new List<Position>(); for (int i = 0; i < toDeletePosition.Count; i++) { var _pos = pawnguardDb.Positions .FirstOrDefault(pos => pos.id == toDeletePosition[i].id); deletePosition.Add(_pos); } if (deletePosition.Count > 0) { pawnguardDb.Positions.DeleteAllOnSubmit(deletePosition); pawnguardDb.SubmitChanges(); Page_Loaded(sender, e); isCheckAll.IsChecked = false; toDeletePosition.Clear(); } } } if (uid == "save") { if (toEditPosition == null) { if (string.IsNullOrWhiteSpace(txtPositionName.Text)) { positionError.Visibility = System.Windows.Visibility.Visible; errorMsg.Text = MSG_REQUIRED; return; } pawnguardDb = new PawnGuardDBDataContext(); bool exist = pawnguardDb.Positions.AsEnumerable() .Where(pos => pos.name.ToLower() == txtPositionName.Text.ToLower()) .Any(); if (exist) { positionError.Visibility = System.Windows.Visibility.Visible; errorMsg.Text = MSG_EXIST; return; } pawnguardDb.Positions.InsertOnSubmit(new Position() { name = txtPositionName.Text, createdAt = DateTime.Now, updatedAt = DateTime.Now }); } else { string editName = toEditPosition.name; if (!editName.Equals(txtPositionName.Text, StringComparison.InvariantCultureIgnoreCase)) { bool exist = pawnguardDb.Positions.AsEnumerable() .Where(pos => pos.name.ToLower() == txtPositionName.Text.ToLower()) .Any(); if (exist) { positionError.Visibility = System.Windows.Visibility.Visible; errorMsg.Text = MSG_EXIST; return; } } else { VisualStateManager.GoToElementState(this.LayoutRoot, "HideState", true); return; } toEditPosition.name = txtPositionName.Text; toEditPosition.updatedAt = DateTime.Now; } try { pawnguardDb.SubmitChanges(); saveButton.Visibility = System.Windows.Visibility.Collapsed; dispathTimer = new DispatcherTimer(); dispathTimer.Interval = new TimeSpan(0, 0, 1); dispathTimer.Start(); int time = 3; SuccessMessgage.Visibility = System.Windows.Visibility.Visible; dispathTimer.Tick += delegate(object s, EventArgs ea) { if (time >= 0) runTime.Text = time + " sec."; else { dispathTimer.Stop(); SuccessMessgage.Visibility = System.Windows.Visibility.Collapsed; VisualStateManager.GoToElementState(this.LayoutRoot, "HideState", true); runTime.Text = "3 sec."; txtPositionName.Clear(); Page_Loaded(sender, e); } time--; }; } catch (Exception) { } } }
partial void UpdatePosition(Position instance);
partial void DeletePosition(Position instance);
partial void InsertPosition(Position instance);