WPF属性“内容”不能是绑定到可视元素的数据

时间:2013-05-10 09:45:48

标签: wpf listview binding

我有一个列表视图,在第一列中我尝试绑定底层集合的索引。

<Window.Resources>
    <local:IndexConverter x:Key="IndexConverter" />
</Window.Resources>
....
<ListView>
    <ListView.View>
        <GridView>          
            <GridViewColumn>
                <GridViewColumn.CellTemplate>
                    <DataTemplate>
                        <Label Width="70" Height="40" 
Content="{Binding RelativeSource={RelativeSource AncestorType=ListViewItem}, Converter={StaticResource IndexConverter}}"></Label>
                        <!-- More stuff -->
                    </DataTemplate>
                </GridViewColumn.CellTemplate>
            </GridViewColumn>
        </GridView>
    </ListView.View>
</ListView>

// IndexConverter
public object Convert(object value, Type TargetType, object parameter, CultureInfo culture)
{
     // Get row number. This part is working.
     // Return the formatted row number
     return string.Format("#{0}", rowNumber);
}

当我编译这个时,我得到以下错误:

属性“内容”不能是绑定到可视元素的数据。

绑定有什么问题?

1 个答案:

答案 0 :(得分:2)

我认为你试图直接将列表视图项(我猜是一个可视元素)绑定到你的内容中:我没有看到你的绑定路径,只有源代码。

尝试将内容绑定到您的内容

<Label Width="70" Height="40"  Content="{Binding Path=SomeThing,RelativeSource=RelativeSource AncestorType=ListViewItem},Converter={StaticResource IndexConverter}}">