/// <summary> /// Gets the save Item from property Grid /// </summary> public void PropertySave() { SaveItemProp = new ObservableCollection <WorkspaceItemProperty>(); if (ApplicationName != Constants.ViewNames.AddItem) { if (WorkspaceItemProperties != null) { for (int i = 1; i <= GrdListViewProperty.VisibleRowCount; i++) { if (i > WorkspaceItemProperties.Count()) { SaveItemProp.Add(GrdListViewProperty.GetRowByListIndex(i - 1) as WorkspaceItemProperty); } } SaveItemProperty = SaveItemProp; WorkspaceItemProperties = ListViewProperty; } } else { for (int i = 1; i <= GrdListViewProperty.VisibleRowCount; i++) { SaveItemProp.Add(GrdListViewProperty.GetRowByListIndex(i - 1) as WorkspaceItemProperty); } SaveItemProperty = SaveItemProp; WorkspaceItemProperties = SaveItemProp; //need to check //todo GrdListViewProperty.ItemsSource = ListViewProperty; } }
/// <summary> /// Does the row editing is available(For Editable). /// </summary> /// <param name="sender">grdWorkspaceDescriptions Grid</param> /// <param name="e">ShowingEditorEventArgs</param> private void ViewShowingEditorProperty(object sender, ShowingEditorEventArgs e) { if (e.RowHandle == GridControl.NewItemRowHandle) { return; } if (WorkspaceItemProperties != null) { e.Cancel = WorkspaceItemProperties.Count() > (GrdListViewProperty.View).FocusedRowData.ControllerVisibleIndex; } }
public void DeletePropertyListItem() { if (WorkspaceItemProperties != null) { if (WorkspaceItemProperties.Cast <object>().Where(propertyinfo => (GrdListViewProperty.View.FocusedRow) == propertyinfo).Any()) { GrdListViewProperty.Columns["Delete"].IsEnabled = false; } } if (GrdListViewProperty.Columns["Delete"].IsEnabled) { var result = MessageBox.Show("Are you sure want to delete?", Constants.ProjectTitle, MessageBoxButton.YesNo, MessageBoxImage.Question); switch (result) { case MessageBoxResult.Yes: if (GrdListViewProperty.View.FocusedRow != null) { if (WorkspaceItemProperties != null) { if (WorkspaceItemProperties.Cast <object>().Where(workspaceProperties => (GrdListViewProperty.View.FocusedRow) != workspaceProperties).Any()) { ((TableView)GrdListViewProperty.View).DeleteRow(Convert.ToInt32((GrdListViewProperty.View).FocusedRowData.ControllerVisibleIndex.ToString())); } } } else if (GrdListViewProperty.View.FocusedRowHandle == GridControl.NewItemRowHandle) { GrdListViewProperty.View.CancelRowEdit(); } else { ((TableView)GrdListViewProperty.View).DeleteRow(Convert.ToInt32((GrdListViewProperty.View).FocusedRowData.ControllerVisibleIndex.ToString())); } break; case MessageBoxResult.No: break; } } else { if (GrdListViewProperty.View.FocusedRowHandle != GridControl.NewItemRowHandle) { var propertyinfo = (WorkspaceItemProperty)GrdListViewProperty.View.FocusedRow; if (string.IsNullOrEmpty(propertyinfo.Id)) { var result = MessageBox.Show("Are you sure want to delete?", Constants.ProjectTitle, MessageBoxButton.YesNo, MessageBoxImage.Question); switch (result) { case MessageBoxResult.Yes: ((TableView)GrdListViewProperty.View).DeleteRow(Convert.ToInt32((GrdListViewProperty.View).FocusedRowData.ControllerVisibleIndex.ToString())); break; case MessageBoxResult.No: break; } } } else { var result = MessageBox.Show("Are you sure want to delete?", Constants.ProjectTitle, MessageBoxButton.YesNo, MessageBoxImage.Question); switch (result) { case MessageBoxResult.Yes: GrdListViewProperty.View.CancelRowEdit(); break; case MessageBoxResult.No: break; } } } GrdListViewProperty.Columns["Delete"].IsEnabled = true; }