Forráskód Böngészése

Редактирвоание и Удаление остался толкьо стиль

Danila Alekseev 1 éve
szülő
commit
630d441e36

+ 10 - 7
ROGOZ/Pages/AddEditPage.xaml.cs

@@ -22,7 +22,7 @@ namespace ROGOZ.Pages
     /// </summary>
     public partial class AddEditPage : Page
     {
-        private Task _currentTask = new Task();
+        private Task _currentTask = null;
         public AddEditPage()
         {
             InitializeComponent();
@@ -75,7 +75,7 @@ namespace ROGOZ.Pages
             //var errorMessage = CheckErrors();
             if (CheckErrors() == null)
             {
-                if (_currentTask != null)
+                if (_currentTask == null)
                 {
                     try
                     {
@@ -92,13 +92,9 @@ namespace ROGOZ.Pages
                             WorkType = CmbTaskType.Text,
                             IsDeleted = false
                         };
-                        //App.Context.Task.Add(selectedTask);
-                        //user1Entities.GetContext().Add(selectedTask);
-                        //App.Context.SaveChangesw
-                        //user1Entities.GetContext().SaveChanges();
                         user1Entities.GetContext().Task.Add(selectedTask);
                         user1Entities.GetContext().SaveChanges();
-                        MessageBox.Show("Ну вроде получилось");
+                        MessageBox.Show("Задача добавлена");
                         NavigationService.GoBack();
                     }
                     catch
@@ -107,6 +103,13 @@ namespace ROGOZ.Pages
 
                     }
                 }
+                else
+                {
+                    var context = user1Entities.GetContext();
+                    context.SaveChanges();
+                    MessageBox.Show("Задача отредактирован");
+                    NavigationService.GoBack();
+                }
 
             }
 

+ 9 - 2
ROGOZ/Pages/TaskList.xaml

@@ -31,14 +31,21 @@
         <DataGrid Grid.Row="2" x:Name="DGTasks" AutoGenerateColumns="False" IsReadOnly="True" ItemsSource="{Binding}" RenderTransformOrigin="0.5,0.5" Margin="10,10,10,41">
             <DataGrid.Columns>
                 <DataGridTextColumn Header="Задача" Binding="{Binding Title}" Width="320"/>
-                <DataGridTextColumn Header="Статус" Binding="{Binding Task.Status}" Width="80"/>
+                <DataGridTextColumn Header="Статус" Binding="{Binding Status}" Width="80"/>
                 <DataGridTextColumn Header="Исполнитель" Binding="{Binding Executor.User.MiddleName}" Width="140"/>
                 <DataGridTextColumn Header="Менеджер" Width="*" Binding="{Binding Manager.User.MiddleName}"/>
+                <DataGridTemplateColumn Width="auto">
+                    <DataGridTemplateColumn.CellTemplate>
+                        <DataTemplate>
+                            <Button Content="Редактировать" Name="BtnEdit" Width="150" Click="BtnEdit_Click" />
+                        </DataTemplate>
+                    </DataGridTemplateColumn.CellTemplate>
+                </DataGridTemplateColumn>
             </DataGrid.Columns>
         </DataGrid>
 
         <Button Content="Добавить" Grid.Row="2" Width="150" Height="30" HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="100,5" Click="BtnAdd_Click"/>
-        <Button Content="Удалить" Grid.Row="2" Width="150" Height="30" HorizontalAlignment="Right" VerticalAlignment="Bottom" Margin="100,5" Click="BtnDel_Click"/>
+        <Button Content="Удалить" Name="BtnDelTask" Grid.Row="2" Width="150" Height="30" HorizontalAlignment="Right" VerticalAlignment="Bottom" Margin="100,5" Click="BtnDelTask_Click"/>
 
     </Grid>
 </Page>

+ 19 - 2
ROGOZ/Pages/TaskList.xaml.cs

@@ -28,12 +28,29 @@ namespace ROGOZ.Pages
 
         private void BtnAdd_Click(object sender, RoutedEventArgs e)
         {
-            NavigationService.Navigate(new AddEditPage());
+            NavigationService.Navigate(new AddEditPage(null));
         }
 
-        private void BtnDel_Click(object sender, RoutedEventArgs e)
+        private void BtnEdit_Click(object sender, RoutedEventArgs e)
         {
+            NavigationService.Navigate(new AddEditPage((sender as Button).DataContext as Task));
+        }
 
+        private void BtnDelTask_Click(object sender, RoutedEventArgs e)
+        {
+            var taskIsForRemoving = DGTasks.SelectedItems.Cast<Task>().ToList();
+            if (MessageBox.Show($"Вы точно хотите удалить {taskIsForRemoving.Count()} задач?", 
+                "Внимание",MessageBoxButton.YesNo, MessageBoxImage.Question)==MessageBoxResult.Yes)
+            {
+                try
+                {
+                    user1Entities.GetContext().Task.RemoveRange(taskIsForRemoving);
+                    user1Entities.GetContext().SaveChanges();
+                    MessageBox.Show("Данные удалены");
+                    DGTasks.ItemsSource = user1Entities.GetContext().Task.ToList();
+                }
+                catch (Exception ex) {MessageBox.Show(ex.Message.ToString());}
+            }
         }
     }
 }