Мой нижний колонтитул в настоящее время состоит из метки и ItemsControl. Он должен быть ниже 2 элементов управления DataGrid, которые похожи в том, что они оба содержат столбец фиксированной ширины для каждого дня недели и его конца (для этого есть итоги для ItemsControl в нижнем колонтитуле).
Я пытаюсь решить вопрос о выравнивании, которое, кажется, проще всего просто правильно выровнять столбцы дня. Я думал, что мог бы использовать DockPanel в качестве контейнера и Dock = Right на ItemsControl, как показано ниже, но все начинается слева после метки.
<DockPanel x:Name="columnTotals" DockPanel.Dock="Bottom" >
<Label ... DockPanel.Dock="Left" Width="Auto">Grand Totals</Label>
<ItemsControl DockPanel.Dock="Right"
ItemsSource="{Binding Path=TotalTimeViewModels, Mode=OneWay}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</DockPanel>
Итак, мой основной вопрос в этом посте: почему ItemsControl на самом деле не стыкуется справа от родительского контейнера (в настоящее время также DockPanel )
Приветствия
Berryl
Второстепенный и более сложный вопрос - как выровнять нижний колонтитул со столбцами DataGrid. Моя главная мысль на сегодняшний день - использовать тот факт, что последние столбцы всегда одинаковы, а их ширина фиксирована.
Я могу выровнять вещи со StackPanel, используя FlowDirection = RightToLeft и 8 дочерних меток (в отличие от одного ItemsControl), но это имеет недостатки, заключающиеся в том, что XAML раздутый и требует, чтобы текст был RightToLeft, чтобы обратить поток контейнера - смотреть на это грязно и запутанно.
Я думаю, что нижний колонтитул также может быть другой DataGrid, но столбцы не будут такими же, поэтому мне все равно придется решить выравнивание, либо работая справа налево, как я делаю сейчас, либо выяснить, что Начальная точка столбцов дня - как изначально, так и после изменения размера (я не знаю, как это сделать).
Опять же, спасибо за чтение и приветствия,
Berryl