我有一个包含ItemsControl的DataTemplate,它又使用GridSet作为ItemsPanel。我想绑定此网格的列宽,但它根本不起作用:我尝试绑定的所有列的宽度仅为1 *(这是我想的默认值)。但是,我可以看到这些值在代码中发生了变化,因此问题在于绑定。有什么想法吗?
<DataTemplate>
<ItemsControl ItemsSource="{Binding DataContext.MySource, RelativeSource={RelativeSource AncestorType=Controls:MetroWindow}}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Grid ShowGridLines="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="4*" />
<ColumnDefinition Width="{Binding LeftColumnWidth}" />
<ColumnDefinition Width="{Binding CenterColumnWidth}" />
<ColumnDefinition Width="{Binding RightColumnWidth}" />
<ColumnDefinition Width="2*" />
</Grid.ColumnDefinitions>
</Grid>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</DataTemplate>