private void ButtonDelivery_Click(object sender, RoutedEventArgs e) { ProcessOrderColorDetail processOrderColorDetail = (ProcessOrderColorDetail)(DataGridOrderColorFactoryShippingDetail.SelectedItem); ProcessOrderFlowDateDetail LastProcessOrderFlowDateDetailItem = DataGridProcessOrderFlowDateDetail.Items.Cast <ProcessOrderFlowDateDetail>().Last(); ProcessOrderFlowDateDetail processOrderFlowDateDetail = ProcessOrderFlowDateDetail == null ? LastProcessOrderFlowDateDetailItem : ProcessOrderFlowDateDetail; DeliveryNumberCheckDialog deliveryNumberCheckDialog = new DeliveryNumberCheckDialog(processOrderFlowDateDetail.Name, ProcessOrder.OrderString, ProcessOrder.Fabric, processOrderColorDetail); deliveryNumberCheckDialog.Show(); deliveryNumberCheckDialog.Closed += DeliveryNumberCheckDialogClosed; }
private void DeliveryNumberCheckDialogClosed(object sender, EventArgs e) { DeliveryNumberCheckDialog deliveryNumberCheckDialog = (DeliveryNumberCheckDialog)sender; var textileColorInventory = InventoryListDialog?.InventoryListViewModel.TextileColor ?? null; DeliveryListDialog deliveryListDialog = null; if (DeliveryListDialog.Count != 0) { DeliveryListDialog.TryGetValue(deliveryNumberCheckDialog.ProcessOrderDelivery.FactoryName, out deliveryListDialog); } if (deliveryListDialog == null && deliveryNumberCheckDialog.IsCheck == true) { deliveryNumberCheckDialog.ProcessOrderDelivery.StorageNumber = textileColorInventory?.CountInventory ?? 0; deliveryNumberCheckDialog.ProcessOrderDelivery.StorageSpace = textileColorInventory?.StorageSpaces ?? string.Empty; Window parentWindow = Window.GetWindow(this); deliveryListDialog = new DeliveryListDialog(deliveryNumberCheckDialog.IsCheck == true ? deliveryNumberCheckDialog.ProcessOrderDelivery : null) { Owner = Window.GetWindow(this), Top = parentWindow.Top, Left = parentWindow.Left + parentWindow.Width > SystemParameters.PrimaryScreenWidth - 40 ? 0 : parentWindow.Left + parentWindow.Width, }; DeliveryListDialog.Add(deliveryNumberCheckDialog.ProcessOrderDelivery.FactoryName, deliveryListDialog); deliveryListDialog.Show(); deliveryListDialog.Closed += DeliveryListDialogClosed; } else { if (deliveryNumberCheckDialog.IsCheck == true) { deliveryListDialog.ProcessOrderColorDetailChanged(deliveryNumberCheckDialog.ProcessOrderDelivery, textileColorInventory?.CountInventory ?? 0, textileColorInventory?.StorageSpaces ?? string.Empty); } } }