Пример #1
0
        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) {
                }
            }
        }
Пример #2
0
 partial void UpdatePosition(Position instance);
Пример #3
0
 partial void DeletePosition(Position instance);
Пример #4
0
 partial void InsertPosition(Position instance);