2 つのレベルのコレクションを持つクラスがあります。ソフトウェアは給与支払いに関するものです。アイデアは、複数の有給従業員で構成される支払いアクションです。そして、各従業員は複数の給与削減を受ける可能性があります。オブジェクトは次のようになります。
Payment -->Payment Object
Date
ID
Employees: -->ObservableCollection of EmpPayment Objects
Emp A -->And EmpPayment Object
Name
TotalCut --> An Integer Readonly Property that sums the Cuts.
Cuts --> Collection of Cut object
Cut1 --> Cut object 1
Cut2 --> Cut object 2
Emp B
Name
TotalCuts
Cuts
Cut1
Cut2
私は超過DataGridを使用しています。これまでのところ、CellContentTemplate を使用して 1 つの列に 2 つの値、つまり Cuts と TotalCut を表示したいことを除けば、これで問題ありません。したがって、データグリッドは次のようになります。
Employee | Cuts
Emp A | [The Total Cut]
Cut 1
Cut 2
Emp B | [The Total Cut]
Cut 1
Cut 2
カット列では、Xceed DropDownButton を使用して合計を表示したいと考えており、ユーザーは dropdowncontent を編集してカットを編集できます。これまでのところ、Employees ObservableCollection 用に作成した XAML は次のとおりです。
<xcdg:DataGridControl x:Name="GridEmployees" ItemsSource="{Binding Employees}" AutoCreateColumns="False">
<xcdg:DataGridControl.Columns>
<xcdg:Column FieldName="Name" Title="Employee"/>
<xcdg:Column FieldName="Cuts" Title="Cuts">
<xcdg:Column.CellContentTemplate>
<DataTemplate>
<xctk:DropDownButton Content="{Binding Path=TOTALCUT}">
<xctk:DropDownButton.DropDownContent>
<ListBox ItemsSource="{Binding}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBox Text="{Binding CutDescription}"/>
<TextBox Text="{Binding Amount}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</xctk:DropDownButton.DropDownContent>
</xctk:DropDownButton>
</DataTemplate>
</xcdg:Column.CellContentTemplate>
</xcdg:Column>
</xcdg:DataGridControl.Columns>
</xcdg:DataGridControl>
Cuts ObservableCollection へのバインドはうまく機能しますが、TotalCut へのバインドはうまくいきません。TotalCut [意図的にすべて大文字で書かれている] を同じ列にバインドするにはどうすればよいですか? 2 つの列を使用することは可能ですが、きれいではありません。