try to put data from one window to another

pull/1/head
DJh2o2 2022-05-08 10:58:38 +07:00
parent cb9e17ae3e
commit 8ee758ed7d
4 changed files with 101 additions and 21 deletions

@ -4,7 +4,6 @@ using Gremlin.MVVM;
using Gremlin.MVVM.Views;
using System;
using System.Collections.Generic;
using System.Windows;
namespace Gremlin.Operations
{
@ -36,7 +35,7 @@ namespace Gremlin.Operations
customDescription.DataStatus = "Active";
customDescription.Notes = "Description has to be edited manually!";
CheckNewCustomDescription checkNewCustomDescription = new();
CheckNewCustomDescription checkNewCustomDescription = new(lineItemVM, customDescriptionVM);
if (checkNewCustomDescription.ShowDialog() == true)
{
gremlinContext.Add(customDescription);

@ -0,0 +1,19 @@
using Caliburn.Micro;
namespace Gremlin.MVVM.ViewModels
{
internal class CheckNewCustomDescriptionViewModel : PropertyChangedBase
{
private LineItemViewModel lineItemViewModel;
private CustomDescriptionViewModel customDescriptionViewModel;
public LineItemViewModel LineItemViewModel { get => lineItemViewModel; set => lineItemViewModel = value; }
public CustomDescriptionViewModel CustomDescriptionViewModel { get => customDescriptionViewModel; set => customDescriptionViewModel = value; }
public CheckNewCustomDescriptionViewModel(LineItemViewModel lineItemViewModel, CustomDescriptionViewModel customDescriptionViewModel)
{
LineItemViewModel = lineItemViewModel;
CustomDescriptionViewModel = customDescriptionViewModel;
}
}
}

@ -1,18 +1,68 @@
<Window x:Name="CheckNewCustomDescription1" x:Class="Gremlin.MVVM.Views.CheckNewCustomDescription"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Gremlin.MVVM.Views"
mc:Ignorable="d"
Title="CheckNewCustomDescription" Height="119" Width="264">
<Grid Margin="0,0,10,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="163*"/>
<ColumnDefinition Width="101*"/>
</Grid.ColumnDefinitions>
<Button x:Name="btnOk" Content="Ok" IsDefault="True" Margin="10,10,64,30"/>
<Button x:Name="btnCancel" Content="Cancel" Margin="116,10,50,30" IsCancel="True" Grid.ColumnSpan="2"/>
<Window x:Class="Gremlin.MVVM.Views.CheckNewCustomDescription"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:cal="http://www.caliburnproject.org"
xmlns:local="clr-namespace:Gremlin.MVVM"
Title="Check and Save New Custom Description to DB"
Height="300" Width="500">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="30"/>
</Grid.RowDefinitions>
<!--Headings-->
<Grid Grid.Row="0" Height="Auto">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0" Width="Auto">
<TextBlock x:Name="tbLI" Text="LineItem SAPDescription" Margin="5,5,5,5"/>
</Grid>
<Grid Grid.Column="1" Width="Auto">
<TextBlock x:Name="tbCD" Text="CustomDescription Heading" Margin="5,5,5,5"/>
</Grid>
</Grid>
<!--DataGrids-->
<Grid Grid.Row="1" Height="Auto">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<DataGrid x:Name="CustomDescriptionViewModel"
AutoGenerateColumns="True"
MaxColumnWidth="250"
CanUserAddRows="False"
Margin="5,5,5,5"
AlternatingRowBackground="LightGray"
SelectionMode="Single"/>
</Grid>
<Grid Grid.Column="1">
<DataGrid x:Name="LineItemViewModel"
AutoGenerateColumns="True"
MaxColumnWidth="250"
CanUserAddRows="False"
Margin="5,5,5,5"
AlternatingRowBackground="LightGray"
SelectionMode="Single"/>
</Grid>
</Grid>
<!--Buttons-->
<Grid Grid.Row="2" Height="Auto">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Button x:Name="btnOk" Content="Save to DB" IsDefault="True" Margin="5,5,5,5" Click="BtnOk_Click"/>
</Grid>
<Grid Grid.Column="1">
<Button x:Name="btnCancel" Content="Cancel" Margin="5,5,5,5" IsCancel="True" Grid.ColumnSpan="2" Click="BtnCancel_Click"/>
</Grid>
</Grid>
</Grid>
</Window>

@ -2,14 +2,26 @@
namespace Gremlin.MVVM.Views
{
/// <summary>
/// Interaktionslogik für CheckNewCustomDescription.xaml
/// </summary>
public partial class CheckNewCustomDescription : Window
{
public CheckNewCustomDescription()
public CheckNewCustomDescription(LineItemViewModel lineItemViewModel, CustomDescriptionViewModel customDescriptionViewModel)
{
InitializeComponent();
LineItemViewModel.DataContext = lineItemViewModel;
CustomDescriptionViewModel.DataContext = customDescriptionViewModel;
}
private void BtnOk_Click(object sender, RoutedEventArgs e)
{
DialogResult = true;
Close();
}
private void BtnCancel_Click(object sender, RoutedEventArgs e)
{
DialogResult = false;
Close();
}
}
}