Quellcode durchsuchen

Improved Document List for Supplier Bills

frogsoftware vor 1 Jahr
Ursprung
Commit
bf4f311109

+ 1 - 1
prs.desktop/Panels/DataEntry/DataEntryList.xaml.cs

@@ -219,7 +219,7 @@ public partial class DataEntryList : UserControl, ICorePanel, IDockPanel
     private void LoadDocuments(IEnumerable<Document> documents)
     {
         var bitmaps = new Dictionary<Guid, List<ImageSource>>();
-        foreach (var document in documents)
+        foreach (var document in documents.Where(x=>x.Data?.Any() == true))
         {
             List<byte[]> images;
             var bitmapImages = new List<ImageSource>();

+ 6 - 1
prs.desktop/Panels/DataEntry/DataEntryPanel.xaml.cs

@@ -258,7 +258,12 @@ public partial class DataEntryPanel : UserControl, IBasePanel, IDynamicEditorHos
             return;
         
         Editor = new EmbeddedDynamicEditorForm();
-        Editor.SetLayoutType<VerticalDynamicEditorGridLayout>();
+        
+        if (_selectedType == typeof(Bill))
+            Editor.SetLayoutType<SupplierBillEditLayout>();
+        else
+            Editor.SetLayoutType<VerticalDynamicEditorGridLayout>();
+        
         Editor.HighlightButtons = true;
         Editor.HideButtons = true;
         Editor.SetValue(Grid.RowProperty, 1);

+ 29 - 30
prs.desktop/Panels/Suppliers/Bills/SupplierBillEditLayout.xaml

@@ -11,40 +11,39 @@
     d:DesignHeight="450" d:DesignWidth="800">
 
     <Grid DataContext="{Binding RelativeSource={RelativeSource FindAncestor,AncestorType={x:Type local:SupplierBillEditLayout}}}">
+        
         <Grid.RowDefinitions>
             <RowDefinition Height="Auto"/>
             <RowDefinition Height="Auto"/>
             <RowDefinition Height="*"/>
         </Grid.RowDefinitions>
-        <Grid.ColumnDefinitions>
-            <ColumnDefinition Width="*"/>
-            <ColumnDefinition Width="Auto"/>
-            <ColumnDefinition Width="{Binding DocumentWidth}"/>
-        </Grid.ColumnDefinitions>
-        <dynamicGrid:DynamicTabControl x:Name="Editors"
-                                       Grid.Row="0"
-                                       Grid.Column="0"
-                                       SelectionChanged="Editors_SelectionChanged"/>
-        <sf:SfGridSplitter Grid.Row="1" Grid.Column="0"
-                           Height="4"
-                           HorizontalAlignment="Stretch"
-                           Background="Transparent"
-                           ResizeBehavior="PreviousAndNext"
-                           Template="{StaticResource HorizontalSplitter}"
-                           PreviewStyle="{StaticResource HorizontalSplitterPreview}"/>
-        <dynamicGrid:DynamicTabControl x:Name="OtherPages"
-                                       Grid.Row="2" Grid.Column="0"
-                                       SelectionChanged="Editors_SelectionChanged"
-                                       TabStripPlacement="Bottom"/>
-        <sf:SfGridSplitter Grid.Row="0" Grid.RowSpan="3"
-                           Grid.Column="1"
-                           Width="4"
-                           VerticalAlignment="Stretch"
-                           Background="Transparent"
-                           ResizeBehavior="PreviousAndNext"
-                           Template="{StaticResource VerticalSplitter}"/>
-        <ContentControl x:Name="DocumentControl"
-                        Grid.Row="0" Grid.RowSpan="3"
-                        Grid.Column="2"/>
+        
+        <dynamicGrid:DynamicTabControl 
+            x:Name="Editors"
+            Grid.Row="0"
+            SelectionChanged="Editors_SelectionChanged"/>
+        
+        <sf:SfGridSplitter 
+            Grid.Row="1" 
+            Height="4"
+            HorizontalAlignment="Stretch"
+            Background="Transparent"
+            ResizeBehavior="PreviousAndNext"
+            Template="{StaticResource HorizontalSplitter}"
+            PreviewStyle="{StaticResource HorizontalSplitterPreview}"/>
+        
+        <dynamicGrid:DynamicTabControl 
+            x:Name="OtherPages"
+            Grid.Row="2" 
+            Margin="0,-2,0,0"
+            SelectionChanged="Editors_SelectionChanged"
+            TabStripPlacement="Bottom">
+            <dynamicGrid:DynamicTabControl.RightPanel>
+                <ContentControl 
+                    x:Name="DocumentControl"/>
+            </dynamicGrid:DynamicTabControl.RightPanel>
+        </dynamicGrid:DynamicTabControl>
+        
+        
     </Grid>
 </dynamicGrid:DynamicEditorGridLayout>

+ 4 - 14
prs.desktop/Panels/Suppliers/Bills/SupplierBillEditLayout.xaml.cs

@@ -29,18 +29,7 @@ public partial class SupplierBillEditLayout : DynamicEditorGridLayout, INotifyPr
         get { return Editors.TabStripVisible; }
         set { Editors.TabStripVisible = value; }
     }
-
-    private double _documentWidth = 400;
-    public double DocumentWidth
-    {
-        get => _documentWidth;
-        set
-        {
-            _documentWidth = value;
-            OnPropertyChanged();
-        }
-    }
-
+    
     public SupplierBillEditLayout()
     {
         InitializeComponent();
@@ -54,9 +43,10 @@ public partial class SupplierBillEditLayout : DynamicEditorGridLayout, INotifyPr
 
         foreach (var page in pages.OrderBy(x => x.PageType).ThenBy(x => x.Order()).ThenBy(x => x.Caption()))
         {
-            if(page is DynamicDocumentGrid<BillDocument, Bill, BillLink>)
+            if(page is DynamicDocumentGrid<BillDocument, Bill, BillLink> docs)
             {
-                DocumentControl.Content = page;
+                docs.SimpleTemplate = true;
+                DocumentControl.Content = docs;
             }
             else
             {