绑定不适用于DataTemplate中的Grid.ColumnDefinitions

时间:2015-06-01 12:48:16

标签: c# wpf grid datatemplate itemscontrol

我有一个包含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>

0 个答案:

没有答案