样式中的Silverlight绑定问题

时间:2012-04-08 14:08:21

标签: silverlight xaml binding

我正在尝试将一个setter值绑定到一个属性,但我不断遇到灾难性错误0x8000ffff

试过这个:

<ItemsControl.Style>
    <Style TargetType="ContentPresenter">
        <Setter Property="Grid.Row"
                Value="{Binding GridRow}" />
        <Setter Property="Grid.Column"
                Value="{Binding GridColumn}" />
    </Style>
</ItemsControl.Style>

然后这个:

<ItemsControl.Style>
    <Style TargetType="ContentPresenter">
        <Setter Property="Grid.Row"
                Value="0" />
        <Setter Property="Grid.Column"
                Value="0" />
    </Style>
</ItemsControl.Style>

我必须升级到SL5才能获得TargetType。第二个示例删除任何绑定尝试但仍然失败“灾难性”。

  

<ItemsControl.ItemsPanel>
    <ItemsPanelTemplate>
        <layout:MatrixGrid />
    </ItemsPanelTemplate>
</ItemsControl.ItemsPanel>

我正在尝试在网格中创建数据矩阵(如其他人的示例所述)。

ItemsControl(在Silverlight中)没有ItemContainerStyle元素所以我正在尝试这个,到目前为止没有运气。

<ListBox.ItemsPanel>
    <ItemsPanelTemplate>
        <layout:MatrixGrid />
    </ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemContainerStyle>
    <Style TargetType="ContentPresenter">
        <Setter Property="Grid.Row"
                Value="{Binding GridRow}" />
        <Setter Property="Grid.Column"
                Value="{Binding GridColumn}" />
    </Style>
</ListBox.ItemContainerStyle>

1 个答案:

答案 0 :(得分:0)

Style.TargetType属性设置样式的类型。尝试将其设置为ItemsControl,这可能是它落下的原因。