我有一个用按钮填充的wrappanel。该按钮包含2个标签,显示数字和名称。
我向按钮(Mailbox_Button_Click)添加了一个事件处理程序,当按下任何按钮时,它会正确触发,但是在该函数内部我不知道如何找出按下哪个按钮,以及如何获取按下按钮中的标签内容。
这是WPF代码:
<Border Style="{DynamicResource BaseBorder}" HorizontalAlignment="Left" Height="419" Margin="150,34,0,0" VerticalAlignment="Top" Width="514" Background="White" BorderThickness="0">
<ItemsControl x:Name="Mailboxes_Control" Margin="5" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch">
<ItemsControl.Template>
<ControlTemplate>
<ScrollViewer HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto">
<WrapPanel Width="{TemplateBinding Width}" Height="{TemplateBinding Height}" FlowDirection="LeftToRight" IsItemsHost="true" Margin="0,0,0,0" Orientation="Horizontal" >
</WrapPanel>
</ScrollViewer>
</ControlTemplate>
</ItemsControl.Template>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button x:Name="Mailbox_Button" Style="{StaticResource POSKeypadButton_Style}" HorizontalAlignment="Right" Margin="1" Width="Auto" FontSize="12" Background="#FFF4C20D" Foreground="Black" Click="Mailbox_Button_Click">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Label x:Name="MailboxNumberButton_Label" Grid.Column="0" FontSize="16">
<Label.Content>
<Binding Path="Number" />
</Label.Content>
</Label>
<Label Grid.Column="1" FontSize="12" MaxWidth="74.5" Foreground="Black">
<Label.Content>
<AccessText Text="{Binding Name}" TextWrapping="Wrap"/>
</Label.Content>
</Label>
</Grid>
</Button>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Border>