Doppel-Klick auf den Maersk PO Listeneintrag öffnet die Anmeldung in der Übersicht, falls eine Messagecore vorhanden ist

This commit is contained in:
Daniel Schick 2023-02-16 07:58:52 +01:00
parent d02fe72378
commit 65e45f40b8
4 changed files with 48 additions and 4 deletions

View File

@ -53,7 +53,8 @@
<local:BusyControl x:Name="busyControl" Grid.Column="11" />
</Grid>
<local:ENIDataGrid Grid.Row="1" Margin="2,8,2,2" x:Name="dataGridPOCores" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch"
SelectionMode="Extended" AutoGenerateColumns="False" CellEditEnding="dataGridPOCores_CellEditEnding" CanUserAddRows="False">
SelectionMode="Extended" AutoGenerateColumns="False" CellEditEnding="dataGridPOCores_CellEditEnding" CanUserAddRows="False"
MouseDoubleClick="dataGridPOCores_MouseDoubleClick">
<local:ENIDataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Style.Triggers>

View File

@ -85,6 +85,12 @@ namespace ENI2.Controls
#endregion
#region events
public event MessageCore.MessageCoreSelectedHandler MessageCoreSelected;
#endregion
#region control event handler
private void POList_Loaded(object sender, RoutedEventArgs e)
@ -381,7 +387,7 @@ namespace ENI2.Controls
{
foreach(MaerskData md in this.maerskDataList)
{
if((md.MessageCore == null) && (md.ColM.IsNullOrEmpty()))
if((md.MessageCore == null) && md.ColM.IsNullOrEmpty())
{
if (md.ETA.HasValue && md.ETA.Value.IsNextXDays(3))
requestList.Add(md);
@ -428,5 +434,25 @@ namespace ENI2.Controls
#endregion
#region grid event handler
private void dataGridPOCores_MouseDoubleClick(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
if (sender != null)
{
DataGrid grid = sender as DataGrid;
if (grid?.SelectedItems?.Count == 1)
{
MaerskData md = grid.SelectedItem as MaerskData;
if(md.MessageCore != null) {
Util.UIHelper.SetBusyState();
this.MessageCoreSelected?.Invoke(md.MessageCore);
}
}
}
}
#endregion
}
}

View File

@ -1,4 +1,5 @@
using System.Windows.Controls;
using System.Collections.Generic;
using System.Windows.Controls;
namespace ENI2.Controls
{
@ -13,5 +14,13 @@ namespace ENI2.Controls
this.brvListControl.PortLocode = "DEBRV";
this.wvnListControl.PortLocode = "DEWVN";
}
public List<MaerskListControl> ListControls
{
get
{
return new List<MaerskListControl>() { this.brvListControl, this.wvnListControl };
}
}
}
}

View File

@ -82,6 +82,12 @@ namespace ENI2
{
if(aMessageCore != null)
{
Dispatcher.BeginInvoke((Action)(() =>
{
this.radioButton_Click(this.menuItemNotifications, null);
}));
if (!openTabs.ContainsKey(aMessageCore.Id.Value))
{
ClosableTabItem searchResultItem = new ClosableTabItem();
@ -285,6 +291,8 @@ namespace ENI2
if (this.moControl == null)
{
this.moControl = new MaerskOverviewControl();
foreach (MaerskListControl mlc in this.moControl.ListControls)
mlc.MessageCoreSelected += this.AnmeldungenControl_MessageCoreSelected;
}
this.rootContainer.Children.Add(moControl);
}
@ -304,7 +312,7 @@ namespace ENI2
if(compareExcelDialog == null)
{
this.compareExcelDialog = new CompareExcelDialog();
this.compareExcelDialog.Closed += (o, e) => this.compareExcelDialog = null;
this.compareExcelDialog.Closed += (o, e) => this.compareExcelDialog = null;
compareExcelDialog.Show();
}
else