以下是什么问题? 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属性中。
答案 0 :(得分:0)
没关系,它应该使用Path而不是ElementName。