Hi guys,
I am currently working on a way to display data, that is structured on 3 levels.
On first level is a week, on second level a day, and on the third level a basic entry.
Based on that system I thought about the RadGridView and the Child-Relations.
My main problems now are, that I have especially on the third level way too less space in the child-table so its basically unreadable.
Is there any way to give the childtables more space?
The other problem is, that I haven't found out, how I could set different Templates for the childtables.
The HierarchyChildTemplate only works for one Child as it seems.
The reason why I not just Group by the Days and weeks is, that I later want to use Drag and Drop entries between the days.
I thought this would be more possible in a hierarchical system.
I also tested the RadPanelBar, but there I would need to create somethin like a table with frozen headers and so on manually.
Greetings,
Benedikt
5 Answers, 1 is accepted
Hi Benedikt,
You can set properties on the child grids (such as paddings and margins to reduce the used space) by either handling the DataLoading event or specifying a HierarchyChildTemplate as explained in this article. You can have one template for the 2nd-level grids and in that template specify another template that will be applied for the 3rd level grids.
Please let me know if this works for you or if you need any assistance with the exact implementation at your end.
Regards,
Dilyan Traykov
Progress Telerik
Virtual Classroom, the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products quickly just got a fresh new look + new and improved content including a brand new Blazor course! Check it out at https://learn.telerik.com/.

Hi Dilyan,
works as you wrote, haven't thought of creating a Childteamplate in my Childtemplate.
But now I encounter new problems.
I will try a few things out now. Maybe I'll come back withe new problems later. :D
Hi Benedikt,
I'm glad to hear that you found my suggestion helpful. Do let me know if I can help you in resolving the issues you come across.
Regards,
Dilyan Traykov
Progress Telerik
Virtual Classroom, the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products quickly just got a fresh new look + new and improved content including a brand new Blazor course! Check it out at https://learn.telerik.com/.

Hi Dilyan,
thanks for the offer.
So my main problem is the low performance as soon as I expand the second level.
It takes enormous time to expand and after expansion scrolling is also performing very low.
I understand that it's slow if I don't set a height to the child grids, but even set heights aren't much better.
I know from other projects I made, that published it was better, here it isn't.
I have the GridViewCellCoreStyle active in the resources, also not getting much performance.
I don't set the Core Row-Style cause I want the Row-Indicator.
I do also know, that if I use fixed column-widths it gets faster, so I trried to implementa PersistenceManager to let the user save and load his settings. But I am not able to save it for the childgrids.
Maybe, because each expansion creats a new grid, so it's not even possible?
Also if I scroll in the child, the column-header should stay visible, but it gets scolled out of visible range.
I guess my main problem os the table on the third level. Even in a solo grid with only that data the load takes much longer then I'm used to from other projects. And I don't get why...
The data is already loaded, everything in the code is done, but the rendering in the UI takes 2 seconds. I know not that big, but it just feels bad and I can't show a busy-indicator because only the UI works.
Is there something I'm doing wrong I oversee?
<
telerik:RadGridView
x:Name
=
"rgvLoseLoseSpezialsicht"
Grid.Column
=
"1"
GroupRenderMode
=
"Flat"
ShowGroupPanel
=
"False"
ShowSearchPanel
=
"False"
CanUserSearch
=
"False"
IsSynchronizedWithCurrentItem
=
"True"
AutoGenerateColumns
=
"False"
IsReadOnly
=
"True"
ItemsSource
=
"{Binding Lose}"
SelectionMode
=
"Extended"
AlternationCount
=
"2"
>
<
telerik:RadGridView.Columns
>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding KritischerAuftrag}"
Header
=
"Kritischer Auftrag"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding VertriebsBereich}"
Header
=
"Vertriebs-Bereich"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Jahr}"
Header
=
"Jahr"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding LfdNr}"
Header
=
"LfdNr"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding TA}"
Header
=
"TA"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Gebiet}"
Header
=
"Gebiet"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding ObjektAnschrift}"
Header
=
"Anschrift"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding ObjektOrt}"
Header
=
"Ort"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Los}"
Header
=
"Los"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Mappe}"
Header
=
"Mappe"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding ProduktTyp}"
Header
=
"Produkt-Typ"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding AE, StringFormat=dd.MM}"
Header
=
"AE"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding AMInAV, StringFormat=dd.MM}"
Header
=
"AM in AV"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding AMBearbeitet, StringFormat=dd.MM}"
Header
=
"AM bearbeitet"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding ABFertig, StringFormat=dd.MM}"
Header
=
"AB Fertig"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding MappeFertigAV, StringFormat=dd.MM}"
Header
=
"Mappe fertig AV"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding MappeImWerk, StringFormat=dd.MM}"
Header
=
"Mappe im Werk"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Gegenbestätigung}"
Header
=
"Gegenbestätigung"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Vorfertigungstermin, StringFormat=dd.MM.yy}"
Header
=
"Vorfertigungstermin"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding LetzterLiefertermin, StringFormat=dd.MM.yy}"
Header
=
"Letzter Liefertermin"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Endtermin, StringFormat=dd.MM.yy}"
Header
=
"Endtermin"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Ladetag, StringFormat=dd.MM.yy}"
Header
=
"Ladetag"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding AbholtagSoll, StringFormat=dd.MM.yy}"
Header
=
"Abholtag Soll"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding KundenwunschKWJahr}"
Header
=
"Kundenwunsch KW/Jahr"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding FertigmeldDat, StringFormat=dd.MM.yy}"
Header
=
"Fertigmelde Datum"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Profilfarbe}"
Header
=
"Profilfarbe"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Zellen, StringFormat=N0}"
Header
=
"Zellen"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding ME, StringFormat=N0}"
Header
=
"ME"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Fertigungswert, StringFormat=N0}"
Header
=
"Fertigungswert"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding MontageGroßobjekt}"
Header
=
"Montage Großobjekt"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding OhneMontage}"
Header
=
"Ohne Montage"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Projektierer}"
Header
=
"Projektierer"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding PrioritätAV}"
Header
=
"Priorität AV"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding BearbeiterAV}"
Header
=
"Bearbeiter AV"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding KEMx}"
Header
=
"KEMx"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding KommentarVorhanden}"
Header
=
"Kommentar"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding AvisierungVorhanden}"
Header
=
"Avisierung"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding ProdukteAuftrag}"
Header
=
"Produkte Auftrag"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Direktanlieferung}"
Header
=
"Direktanlieferung"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding TrennwändeAnlagenmerkmal}"
Header
=
"Trennwände Anlagenmerkmal"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding TrennwändeProfilausbildung}"
Header
=
"Trennwände Profilausbildung"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Einzelteile, StringFormat=N0}"
Header
=
"Möbel Einzelteile"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding MöbelSchwierigkeit}"
Header
=
"Möbel Schwierigkeit"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding MöbelProduktausprägung}"
Header
=
"Möbel Produktausprägung"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding WEinfach, StringFormat=N0}"
Header
=
"W einfach"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding WTHPL, StringFormat=N0}"
Header
=
"WT - HPL"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding BZPL, StringFormat=N0}"
Header
=
"BZPL"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding MöbelRegale, StringFormat=N0}"
Header
=
"Möbel/Regale"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding BeckenBecher, StringFormat=N0}"
Header
=
"Becken/Becher"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Spiegelfräsungen, StringFormat=N0}"
Header
=
"Spiegelfräsungen"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding BüromöbelSpan, StringFormat=N0}"
Header
=
"Büromöbel Span"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding AluBlechteile, StringFormat=N0}"
Header
=
"Alu-/Blechteile"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding BüromöbelSpan, StringFormat=N0}"
Header
=
"Büromöbel Span"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding AufwandEM, StringFormat=N0}"
Header
=
"Aufwand EM in h"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding AufwandBAZ, StringFormat=N0}"
Header
=
"Aufwand BAZ in h"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding BAZBeckenBecher, StringFormat=N0}"
Header
=
"BAZ, Becken/Becher"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding EMBeckenBecher, StringFormat=N0}"
Header
=
"EM, Becken/Becher"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding BAZSpiegelfräsungen, StringFormat=N0}"
Header
=
"BAZ, Spiegelfräsungen"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding EMSpiegelfräsungen, StringFormat=N0}"
Header
=
"EM, Spiegelfräsungen"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding SchränkeRSTüren, StringFormat=N0}"
Header
=
"Schränke R/S Türen"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding SchränkeRSTürMaterial}"
Header
=
"Schränke R/S Tür-Material"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding SchränkeRSFE, StringFormat=N0}"
Header
=
"Schränke R/S FE"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Korpusse3er, StringFormat=N0}"
Header
=
"Korpusse 3er"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding SchränkeRSArt3er}"
Header
=
"3er Art"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Korpusse2er, StringFormat=N0}"
Header
=
"Korpusse 2er"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding SchränkeRSArt2er}"
Header
=
"2er Art"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Korpusse1er, StringFormat=N0}"
Header
=
"Korpusse 1er"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding SchränkeRSArt1er}"
Header
=
"1er Art"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding SchränkeIXOSTüren, StringFormat=N0}"
Header
=
"Schränke IXOS Türen"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding SchränkeIXOSTürMaterial}"
Header
=
"Schränke IXOS Tür-Material"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding SchränkeIXOSFE, StringFormat=N0}"
Header
=
"Schränke IXOS FE"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding einteiligeSchränke, StringFormat=N0}"
Header
=
"einteilige Schränke"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding mehrteiligeSchränke, StringFormat=N0}"
Header
=
"mehrteilige Schränke"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Sonderschränke, StringFormat=N0}"
Header
=
"Sonderschränke"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding BänkeFE, StringFormat=N0}"
Header
=
"Bänke FE"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Bohlen}"
Header
=
"Bohlen"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Modell3000, StringFormat=N0}"
Header
=
"Modell 3000"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Modell3010, StringFormat=N0}"
Header
=
"Modell 3010"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Modell3100, StringFormat=N0}"
Header
=
"Modell 3100"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Modell3500, StringFormat=N0}"
Header
=
"Modell 3500"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Modell3600, StringFormat=N0}"
Header
=
"Modell 3600"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Modell3700, StringFormat=N0}"
Header
=
"Modell 3700"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Modell3800, StringFormat=N0}"
Header
=
"Modell 3800"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Modell5100, StringFormat=N0}"
Header
=
"Modell 5100"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Modell5200, StringFormat=N0}"
Header
=
"Modell 5200"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Hakenl1010, StringFormat=N0}"
Header
=
"Hakenl. 1010"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding KSBkl1100, StringFormat=N0}"
Header
=
"KSB < 1100"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding KSBgr1100, StringFormat=N0}"
Header="KSB > 1100"
HeaderTextWrapping="Wrap"
TextWrapping="Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding UBZoOBZ, StringFormat=N0}"
Header
=
"UBZ/OBZ"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding vorgebaute, StringFormat=N0}"
Header
=
"vorgebaute"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Formteile, StringFormat=N0}"
Header
=
"Formteile"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding HakenleistenGesamt, StringFormat=N0}"
Header
=
"Hakenleisten Gesamt"
HeaderTextWrapping
=
"Wrap"
TextWrapping
=
"Wrap"
/>
</
telerik:RadGridView.Columns
>
</
telerik:RadGridView
>
public
class
clsLosSpezialsicht : clsBaseViewModel
{
#region Properties
public
int
JahrKW {
get
;
set
; }
public
int
ID {
get
;
set
; }
public
int
AuftragsID {
get
;
set
; }
public
int
Jahr {
get
;
set
; }
public
int
LfdNr {
get
;
set
; }
public
int
TA {
get
;
set
; }
public
int
? Gebiet {
get
;
set
; }
public
string
ObjektAnschrift {
get
;
set
; }
public
string
ObjektPLZ {
get
;
set
; }
public
string
ObjektOrt {
get
;
set
; }
public
string
ObjektStraße {
get
;
set
; }
public
string
ObjektLand {
get
;
set
; }
public
int
? Los {
get
;
set
; }
public
int
? Mappe {
get
;
set
; }
public
int
ProduktTypID {
get
;
set
; }
public
string
ProduktTyp {
get
;
set
; }
public
int
ProduktGruppenID {
get
;
set
; }
public
bool
ProduktGruppeAktiv {
get
;
set
; }
public
int
ProduktGruppenArtID {
get
;
set
; }
public
DateTime? AE {
get
;
set
; }
public
DateTime? AMInAV {
get
;
set
; }
public
DateTime? AMBearbeitet {
get
;
set
; }
public
DateTime? ABFertig {
get
;
set
; }
public
DateTime? MappeFertigAV {
get
;
set
; }
public
DateTime? MappeImWerk {
get
;
set
; }
public
bool
Gegenbestätigung {
get
;
set
; }
public
DateTime? Vorfertigungstermin {
get
;
set
; }
public
DateTime? Endtermin {
get
;
set
; }
public
DateTime? Ladetag {
get
;
set
; }
public
int
? KundenwunschKW {
get
;
set
; }
public
int
? KundenwunschJahr {
get
;
set
; }
public
string
KundenwunschKWJahr
{
get
{
if
(KundenwunschJahr.HasValue | KundenwunschKW.HasValue)
{
return
KundenwunschKW.ToString() +
"/"
+ KundenwunschJahr.ToString();
}
return
null
;
}
}
public
int
? ProfilfarbeID {
get
;
set
; }
public
int
? ProfilfarbeFarbnummer {
get
;
set
; }
public
string
ProfilfarbeFarbname {
get
;
set
; }
public
string
Profilfarbe
{
get
{
if
(ProfilfarbeID.HasValue)
{
return
ProfilfarbeFarbnummer.ToString() +
" "
+ ProfilfarbeFarbname.ToString();
}
return
null
;
}
}
public
decimal
Zellen {
get
;
set
; }
public
decimal
ME {
get
;
set
; }
public
decimal
Fertigungswert {
get
;
set
; }
public
bool
MontageGroßobjekt {
get
;
set
; }
public
bool
OhneMontage {
get
;
set
; }
public
int
? ProjektiererID {
get
;
set
; }
public
string
ProjektiererNachname {
get
;
set
; }
public
string
ProjektiererVorname {
get
;
set
; }
public
string
Projektierer
{
get
{
if
(ProjektiererNachname !=
null
&& ProjektiererVorname !=
null
)
{
return
ProjektiererNachname.ToString() +
", "
+ ProjektiererVorname.ToString();
}
return
null
;
}
}
public
int
? PrioritätAV {
get
;
set
; }
public
int
? BearbeiterAVID {
get
;
set
; }
public
string
BearbeiterAVNachname {
get
;
set
; }
public
string
BearbeiterAVVorname {
get
;
set
; }
public
string
BearbeiterAV
{
get
{
if
(BearbeiterAVID.HasValue)
{
return
BearbeiterAVNachname.ToString() +
", "
+ BearbeiterAVVorname.ToString();
}
return
null
;
}
}
public
bool
KEMx {
get
;
set
; }
public
bool
KommentarVorhandenLos {
get
;
set
; }
public
bool
KommentarVorhandenAuftrag {
get
;
set
; }
public
bool
KommentarVorhanden
{
get
{
if
(KommentarVorhandenLos | KommentarVorhandenAuftrag)
{
return
true
;
}
return
false
;
}
}
public
bool
AvisierungVorhanden {
get
;
set
; }
public
string
ProdukteAuftrag {
get
;
set
; }
public
bool
Direktanlieferung {
get
;
set
; }
public
int
? TrennwändeAnlagenmerkmalID {
get
;
set
; }
public
string
TrennwändeAnlagenmerkmal {
get
;
set
; }
public
int
? TrennwändeProfilausbildungID {
get
;
set
; }
public
string
TrennwändeProfilausbildung {
get
;
set
; }
public
decimal
Einzelteile {
get
;
set
; }
public
int
? MöbelSchwierigkeitID {
get
;
set
; }
public
int
? MöbelSchwierigkeit {
get
;
set
; }
public
int
? MöbelProduktausprägungID {
get
;
set
; }
public
string
MöbelProduktausprägung {
get
;
set
; }
public
decimal
WEinfach {
get
;
set
; }
public
decimal
WTHPL {
get
;
set
; }
public
decimal
BZPL {
get
;
set
; }
public
decimal
MöbelRegale {
get
;
set
; }
public
decimal
BeckenBecher {
get
;
set
; }
public
decimal
Spiegelfräsungen {
get
;
set
; }
public
decimal
BüromöbelSpan {
get
;
set
; }
public
decimal
AluBlechteile {
get
;
set
; }
public
decimal
AufwandEM {
get
;
set
; }
public
decimal
AufwandBAZ {
get
;
set
; }
public
decimal
BAZBeckenBecher {
get
;
set
; }
public
decimal
EMBeckenBecher {
get
;
set
; }
public
decimal
BAZSpiegelfräsungen {
get
;
set
; }
public
decimal
EMSpiegelfräsungen {
get
;
set
; }
public
decimal
SchränkeRSTüren {
get
;
set
; }
public
decimal
Korpusse3er {
get
;
set
; }
public
int
? SchränkeRSArtID3er {
get
;
set
; }
public
string
SchränkeRSArt3er {
get
;
set
; }
public
decimal
Korpusse2er {
get
;
set
; }
public
int
? SchränkeRSArtID2er {
get
;
set
; }
public
string
SchränkeRSArt2er {
get
;
set
; }
public
decimal
Korpusse1er {
get
;
set
; }
public
int
? SchränkeRSArtID1er {
get
;
set
; }
public
string
SchränkeRSArt1er {
get
;
set
; }
public
decimal
SchränkeRSFE {
get
;
set
; }
public
int
? SchränkeRSTürMaterialID {
get
;
set
; }
public
string
SchränkeRSTürMaterial {
get
;
set
; }
public
decimal
einteiligeSchränke {
get
;
set
; }
public
decimal
mehrteiligeSchränke {
get
;
set
; }
public
decimal
Sonderschränke {
get
;
set
; }
public
decimal
SchränkeIXOSTüren {
get
;
set
; }
public
decimal
SchränkeIXOSFE {
get
;
set
; }
public
int
? SchränkeIXOSTürMaterialID {
get
;
set
; }
public
string
SchränkeIXOSTürMaterial {
get
;
set
; }
public
bool
Bohlen {
get
;
set
; }
public
decimal
Modell3000 {
get
;
set
; }
public
decimal
Modell3010 {
get
;
set
; }
public
decimal
Modell3100 {
get
;
set
; }
public
decimal
Modell3500 {
get
;
set
; }
public
decimal
Modell3600 {
get
;
set
; }
public
decimal
Modell3700 {
get
;
set
; }
public
decimal
Modell3800 {
get
;
set
; }
public
decimal
Modell5100 {
get
;
set
; }
public
decimal
Modell5200 {
get
;
set
; }
public
decimal
Hakenl1010 {
get
;
set
; }
public
decimal
KSBkl1100 {
get
;
set
; }
public
decimal
KSBgr1100 {
get
;
set
; }
public
decimal
UBZoOBZ {
get
;
set
; }
public
decimal
vorgebaute {
get
;
set
; }
public
decimal
Formteile {
get
;
set
; }
public
decimal
BänkeFE {
get
;
set
; }
public
decimal
HakenleistenGesamt {
get
;
set
; }
public
DateTime? LetzterLieferterminBestellungenEintrag {
get
;
set
; }
public
DateTime? ManuellerLiefertermin {
get
;
set
; }
public
DateTime? LetzterLieferterminBestellungen {
get
;
set
; }
public
DateTime? LetzterLiefertermin
{
get
{
if
(ManuellerLiefertermin.HasValue)
{
if
(LetzterLieferterminBestellungenEintrag.HasValue)
{
if
(ManuellerLiefertermin > LetzterLieferterminBestellungenEintrag)
{
return
ManuellerLiefertermin;
}
else
{
return
LetzterLieferterminBestellungenEintrag;
}
}
else
{
return
ManuellerLiefertermin;
}
}
else
{
return
LetzterLieferterminBestellungenEintrag;
}
}
}
public
DateTime? FertigmeldDat {
get
;
set
; }
public
DateTime? AbholtagSoll {
get
;
set
; }
public
bool
KritischerAuftrag {
get
;
set
; }
public
int
VertriebsBereichID {
get
;
set
; }
public
string
VertriebsBereich {
get
;
set
; }
#endregion
#region Constructor
public
clsLosSpezialsicht(DataRow dr)
{
JahrKW = (
int
)dr[
"JahrKW"
];
ID = (
int
)dr[
"ID"
];
AuftragsID = (
int
)dr[
"AuftragsID"
];
Jahr = (
int
)dr[
"Jahr"
];
LfdNr = (
int
)dr[
"LfdNr"
];
TA = (
int
)dr[
"TA"
];
Gebiet = dr[
"Gebiet"
] == DBNull.Value ?
null
: (
int
?)dr[
"Gebiet"
];
ObjektAnschrift = dr[
"ObjektAnschrift"
] == DBNull.Value ?
null
: (
string
)dr[
"ObjektAnschrift"
];
ObjektPLZ = dr[
"ObjektPLZ"
] == DBNull.Value ?
null
: (
string
)dr[
"ObjektPLZ"
];
ObjektOrt = dr[
"ObjektOrt"
] == DBNull.Value ?
null
: (
string
)dr[
"ObjektOrt"
];
ObjektStraße = dr[
"ObjektStraße"
] == DBNull.Value ?
null
: (
string
)dr[
"ObjektStraße"
];
ObjektLand = dr[
"ObjektLand"
] == DBNull.Value ?
null
: (
string
)dr[
"ObjektLand"
];
Los = dr[
"Los"
] == DBNull.Value ?
null
: (
int
?)dr[
"Los"
];
Mappe = dr[
"Mappe"
] == DBNull.Value ?
null
: (
int
?)dr[
"Mappe"
];
ProduktTypID = (
int
)dr[
"ProduktTypID"
];
ProduktTyp = (
string
)dr[
"ProduktTyp"
];
ProduktGruppenID = (
int
)dr[
"ProduktGruppenID"
];
ProduktGruppeAktiv = (
bool
)dr[
"ProduktGruppeAktiv"
];
ProduktGruppenArtID = (
int
)dr[
"ProduktGruppenArtID"
];
AE = dr[
"AE"
] == DBNull.Value ?
null
: (DateTime?)dr[
"AE"
];
AMInAV = dr[
"AMInAV"
] == DBNull.Value ?
null
: (DateTime?)dr[
"AMInAV"
];
AMBearbeitet = dr[
"AMBearbeitet"
] == DBNull.Value ?
null
: (DateTime?)dr[
"AMBearbeitet"
];
ABFertig = dr[
"ABFertig"
] == DBNull.Value ?
null
: (DateTime?)dr[
"ABFertig"
];
MappeFertigAV = dr[
"MappeFertigAV"
] == DBNull.Value ?
null
: (DateTime?)dr[
"MappeFertigAV"
];
MappeImWerk = dr[
"MappeImWerk"
] == DBNull.Value ?
null
: (DateTime?)dr[
"MappeImWerk"
];
Gegenbestätigung = (
bool
)dr[
"Gegenbestätigung"
];
Vorfertigungstermin = dr[
"Vorfertigungstermin"
] == DBNull.Value ?
null
: (DateTime?)dr[
"Vorfertigungstermin"
];
Endtermin = dr[
"Endtermin"
] == DBNull.Value ?
null
: (DateTime?)dr[
"Endtermin"
];
Ladetag = dr[
"Ladetag"
] == DBNull.Value ?
null
: (DateTime?)dr[
"Ladetag"
];
KundenwunschKW = dr[
"KundenwunschKW"
] == DBNull.Value ?
null
: (
int
?)dr[
"KundenwunschKW"
];
KundenwunschJahr = dr[
"KundenwunschJahr"
] == DBNull.Value ?
null
: (
int
?)dr[
"KundenwunschJahr"
];
ProfilfarbeID = dr[
"ProfilfarbeID"
] == DBNull.Value ?
null
: (
int
?)dr[
"ProfilfarbeID"
];
ProfilfarbeFarbnummer = dr[
"ProfilfarbeFarbnummer"
] == DBNull.Value ?
null
: (
int
?)dr[
"ProfilfarbeFarbnummer"
];
ProfilfarbeFarbname = dr[
"ProfilfarbeFarbname"
] == DBNull.Value ?
null
: (
string
)dr[
"ProfilfarbeFarbname"
];
Zellen = (
decimal
)dr[
"Zellen"
];
ME = (
decimal
)dr[
"ME"
];
Fertigungswert = (
decimal
)dr[
"Fertigungswert"
];
MontageGroßobjekt = (
bool
)dr[
"MontageGroßobjekt"
];
OhneMontage = (
bool
)dr[
"OhneMontage"
];
ProjektiererID = dr[
"ProjektiererID"
] == DBNull.Value ?
null
: (
int
?)dr[
"ProjektiererID"
];
ProjektiererNachname = dr[
"ProjektiererNachname"
] == DBNull.Value ?
null
: (
string
)dr[
"ProjektiererNachname"
];
ProjektiererVorname = dr[
"ProjektiererVorname"
] == DBNull.Value ?
null
: (
string
)dr[
"ProjektiererVorname"
];
PrioritätAV = dr[
"PrioritätAV"
] == DBNull.Value ?
null
: (
int
?)dr[
"PrioritätAV"
];
BearbeiterAVID = dr[
"BearbeiterAVID"
] == DBNull.Value ?
null
: (
int
?)dr[
"BearbeiterAVID"
];
BearbeiterAVNachname = dr[
"BearbeiterAVNachname"
] == DBNull.Value ?
null
: (
string
)dr[
"BearbeiterAVNachname"
];
BearbeiterAVVorname = dr[
"BearbeiterAVVorname"
] == DBNull.Value ?
null
: (
string
)dr[
"BearbeiterAVVorname"
];
KEMx = (
bool
)dr[
"KEMx"
];
KommentarVorhandenLos = (
bool
)dr[
"KommentarVorhandenLos"
];
KommentarVorhandenAuftrag = (
bool
)dr[
"KommentarVorhandenAuftrag"
];
AvisierungVorhanden = (
bool
)dr[
"AvisierungVorhanden"
];
ProdukteAuftrag = dr[
"ProdukteAuftrag"
] == DBNull.Value ?
null
: (
string
)dr[
"ProdukteAuftrag"
];
Direktanlieferung = (
bool
)dr[
"Direktanlieferung"
];
#region Trennwände
if
(ProduktGruppenArtID == 1)
{
TrennwändeAnlagenmerkmalID = (
int
?)dr[
"TrennwändeAnlagenmerkmalID"
];
TrennwändeAnlagenmerkmal = (
string
)dr[
"TrennwändeAnlagenmerkmal"
];
TrennwändeProfilausbildungID = (
int
?)dr[
"TrennwändeProfilausbildungID"
];
TrennwändeProfilausbildung = (
string
)dr[
"TrennwändeProfilausbildung"
];
}
#endregion
#region Möbel
else
if
(ProduktGruppenArtID == 2)
{
WEinfach = Convert.ToDecimal(dr[
"WEinfach"
]);
WTHPL = Convert.ToDecimal(dr[
"WTHPL"
]);
BZPL = Convert.ToDecimal(dr[
"BZPL"
]);
MöbelRegale = Convert.ToDecimal(dr[
"MöbelRegale"
]);
BeckenBecher = Convert.ToDecimal(dr[
"BeckenBecher"
]);
Spiegelfräsungen = Convert.ToDecimal(dr[
"Spiegelfräsungen"
]);
BüromöbelSpan = Convert.ToDecimal(dr[
"BüromöbelSpan"
]);
AluBlechteile = Convert.ToDecimal(dr[
"AluBlechteile"
]);
Einzelteile = Convert.ToDecimal(dr[
"Einzelteile"
]);
MöbelSchwierigkeitID = dr[
"MöbelSchwierigkeitID"
] == DBNull.Value ?
null
: (
int
?)dr[
"MöbelSchwierigkeitID"
];
MöbelSchwierigkeit = dr[
"MöbelSchwierigkeit"
] == DBNull.Value ?
null
: (
int
?)dr[
"MöbelSchwierigkeit"
];
MöbelProduktausprägungID = dr[
"MöbelProduktausprägungID"
] == DBNull.Value ?
null
: (
int
?)dr[
"MöbelProduktausprägungID"
];
MöbelProduktausprägung = dr[
"MöbelProduktausprägung"
] == DBNull.Value ?
null
: (
string
)dr[
"MöbelProduktausprägung"
];
AufwandEM = Convert.ToDecimal(dr[
"AufwandEM"
]);
AufwandBAZ = Convert.ToDecimal(dr[
"AufwandBAZ"
]);
BAZBeckenBecher = Convert.ToDecimal(dr[
"BAZBeckenBecher"
]);
EMBeckenBecher = Convert.ToDecimal(dr[
"EMBeckenBecher"
]);
BAZSpiegelfräsungen = Convert.ToDecimal(dr[
"BAZSpiegelfräsungen"
]);
EMSpiegelfräsungen = Convert.ToDecimal(dr[
"EMSpiegelfräsungen"
]);
}
#endregion
#region SchränkeRS
else
if
(ProduktGruppenArtID == 3)
{
Korpusse3er = Convert.ToDecimal(dr[
"Korpusse3er"
]);
Korpusse2er = Convert.ToDecimal(dr[
"Korpusse2er"
]);
Korpusse1er = Convert.ToDecimal(dr[
"Korpusse1er"
]);
SchränkeRSArtID3er = dr[
"SchränkeRSArtID3er"
] == DBNull.Value ?
null
: (
int
?)dr[
"SchränkeRSArtID3er"
];
SchränkeRSArt3er = dr[
"SchränkeRSArt3er"
] == DBNull.Value ?
null
: (
string
)dr[
"SchränkeRSArt3er"
];
SchränkeRSArtID2er = dr[
"SchränkeRSArtID2er"
] == DBNull.Value ?
null
: (
int
?)dr[
"SchränkeRSArtID2er"
];
SchränkeRSArt2er = dr[
"SchränkeRSArt2er"
] == DBNull.Value ?
null
: (
string
)dr[
"SchränkeRSArt2er"
];
SchränkeRSArtID1er = dr[
"SchränkeRSArtID1er"
] == DBNull.Value ?
null
: (
int
?)dr[
"SchränkeRSArtID1er"
];
SchränkeRSArt1er = dr[
"SchränkeRSArt1er"
] == DBNull.Value ?
null
: (
string
)dr[
"SchränkeRSArt1er"
];
SchränkeRSFE = Convert.ToDecimal(dr[
"SchränkeRSFE"
]);
SchränkeRSTüren = Convert.ToDecimal(dr[
"SchränkeRSTüren"
]);
SchränkeRSTürMaterialID = dr[
"SchränkeRSTürMaterialID"
] == DBNull.Value ?
null
: (
int
?)dr[
"SchränkeRSTürMaterialID"
];
SchränkeRSTürMaterial = dr[
"SchränkeRSTürMaterial"
] == DBNull.Value ?
null
: (
string
)dr[
"SchränkeRSTürMaterial"
];
}
#endregion
#region SchränkeIXOS
else
if
(ProduktGruppenArtID == 4)
{
einteiligeSchränke = Convert.ToDecimal(dr[
"einteiligeSchränke"
]);
mehrteiligeSchränke = Convert.ToDecimal(dr[
"mehrteiligeSchränke"
]);
Sonderschränke = Convert.ToDecimal(dr[
"Sonderschränke"
]);
SchränkeIXOSFE = Convert.ToDecimal(dr[
"SchränkeIXOSFE"
]);
SchränkeIXOSTüren = Convert.ToDecimal(dr[
"SchränkeIXOSTüren"
]);
SchränkeIXOSTürMaterialID = dr[
"SchränkeIXOSTürMaterialID"
] == DBNull.Value ?
null
: (
int
?)dr[
"SchränkeIXOSTürMaterialID"
];
SchränkeIXOSTürMaterial = dr[
"SchränkeIXOSTürMaterial"
] == DBNull.Value ?
null
: (
string
)dr[
"SchränkeIXOSTürMaterial"
];
}
#endregion
#region Bänke
else
if
(ProduktGruppenArtID == 5)
{
Modell3000 = Convert.ToDecimal(dr[
"Modell3000"
]);
Modell3010 = Convert.ToDecimal(dr[
"Modell3010"
]);
Modell3100 = Convert.ToDecimal(dr[
"Modell3100"
]);
Modell3500 = Convert.ToDecimal(dr[
"Modell3500"
]);
Modell3600 = Convert.ToDecimal(dr[
"Modell3600"
]);
Modell3700 = Convert.ToDecimal(dr[
"Modell3700"
]);
Modell5100 = Convert.ToDecimal(dr[
"Modell5100"
]);
Hakenl1010 = Convert.ToDecimal(dr[
"Hakenl1010"
]);
KSBgr1100 = Convert.ToDecimal(dr[
"KSBgr1100"
]);
KSBkl1100 = Convert.ToDecimal(dr[
"KSBkl1100"
]);
vorgebaute = Convert.ToDecimal(dr[
"vorgebaute"
]);
Formteile = Convert.ToDecimal(dr[
"Formteile"
]);
Bohlen = (
bool
)dr[
"Bohlen"
];
UBZoOBZ = Convert.ToDecimal(dr[
"UBZoOBZ"
]);
Modell3800 = Convert.ToDecimal(dr[
"Modell3800"
]);
Modell5200 = Convert.ToDecimal(dr[
"Modell5200"
]);
BänkeFE = Convert.ToDecimal(dr[
"BänkeFE"
]);
HakenleistenGesamt = Convert.ToDecimal(dr[
"HakenleistenGesamt"
]);
}
#endregion
LetzterLieferterminBestellungenEintrag = dr[
"LetzterLieferterminBestellungenEintrag"
] == DBNull.Value ?
null
: (DateTime?)dr[
"LetzterLieferterminBestellungenEintrag"
];
ManuellerLiefertermin = dr[
"ManuellerLiefertermin"
] == DBNull.Value ?
null
: (DateTime?)dr[
"ManuellerLiefertermin"
];
LetzterLieferterminBestellungen = dr[
"LetzterLieferterminBestellungen"
] == DBNull.Value ?
null
: (DateTime?)dr[
"LetzterLieferterminBestellungen"
];
FertigmeldDat = dr[
"FertigmeldDat"
] == DBNull.Value ?
null
: (DateTime?)dr[
"FertigmeldDat"
];
AbholtagSoll = dr[
"AbholtagSoll"
] == DBNull.Value ?
null
: (DateTime?)dr[
"AbholtagSoll"
];
KritischerAuftrag = (
bool
)dr[
"KritischerAuftrag"
];
VertriebsBereichID = (
int
)dr[
"VertriebsBereichID"
];
VertriebsBereich = (
string
)dr[
"VertriebsBereich"
];
}
#endregion
}
public ObservableCollection<clsLosSpezialsicht> Lose { get; set; }
Hi Benedikt,
Thank you for the provided image and code snippets.
Based on your setup, the two main optimizations I can offer are to:
1) Use the GridViewRowCoreStyle on the bottom-level RadGridView if its items will not have any children. You can define the style in the Resources collection of the bottom-level HierarchyChildTemplate.
2) Set the MaxHeight and MaxWidth properties of the child grids as, by default, they're measured with infinity and UI virtualization will be turned off, which means that all of their cells will be rendered which in this particular case due to the big number of columns is a considerable amount.
You can also go over the Tips and Tricks article if you have not done so already to see if any of the proposed optimizations also work for you.
If the results you observe are still not satisfactory, I can only suggest that you send over a sample project which I will then profile at my end to investigate why the degraded performance is observed. You can do so in a separate support ticket so that you do not share any sensitive data in the forums.
Please let me know how this goes.
Regards,
Dilyan Traykov
Progress Telerik
Virtual Classroom, the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products quickly just got a fresh new look + new and improved content including a brand new Blazor course! Check it out at https://learn.telerik.com/.