我正在创建一个 WPF 应用程序。我希望在每次单击按钮时显示一个页面。
<ItemsControl ItemsSource="{Binding Path=DashBoardApps}" VerticalAlignment="Bottom" HorizontalAlignment="Center" Name="Abc">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Controls:FishEyeControl />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Button MouseDown="Button_MouseDown">
<Image Source="{Binding Path=ApplicationImage}" Width="32" Height="32"/>
</Button>
<TextBlock x:Name="txtAppName" Text="{Binding Path=ApplicationName}" TextAlignment="Center" Visibility="Hidden" FontSize="7px" Foreground="#eff7ff" VerticalAlignment="Center"/>
</StackPanel>
<DataTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="txtAppName" Property="Visibility" Value="Visible" />
</Trigger>
</DataTemplate.Triggers>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
总共有6个按钮。在按钮上单击我想要显示一个页面。(不同的页面用于不同的按钮)。在后面的代码中,我做了这样的事情
private void Button_MouseDown(object sender, MouseButtonEventArgs e)
{
var s = sender as ItemsControl;
if (s == Abc.Items.GetItemAt(1))//if it is the first button. Not sure if it is right
{
//Code to display page
}
}
我想知道哪个按钮生成了事件。例如,如果单击第一个按钮,则必须显示 page1。所以我尝试使用GetItemAt()
函数来查看是否单击了第一个按钮(显示第一页)。但是它不起作用,我不确定这种方法是否正确。
PS 简单地说我想知道是哪个按钮生成了事件——这可以使用 index.html 来完成吗?如果是这样,怎么做?请帮助