数据绑定时标记属性为null

时间:2010-04-03 07:32:27

标签: silverlight silverlight-4.0

以下是什么问题? Tag属性返回null。但是,Binding for Id属性肯定会返回一个int值。

    <ListBox ItemsSource="{Binding ElementName=myDomainDataSource, Path=Data}">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Text="{Binding Path=Id, Mode=OneWay}" />
                    <HyperlinkButton Content="Edit" Tag="{Binding ElementName=Id, Mode=OneWay}" Click="Edit_Click"  />
                </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>

然后......

    private void Edit_Click(object sender, RoutedEventArgs e)
    {
        ContentControl c = sender as ContentControl;

        // exception - c.Tag is null
        int id = (int)c.Tag;
    }

Id属性在UI上显示一个值,但它似乎没有存储在按钮Tag属性中。

1 个答案:

答案 0 :(得分:0)

没关系,它应该使用Path而不是ElementName。