0

私はこれらのコードを入手しました:

csの場合:

getのクラスと、、、ImgSmall:のNameセットImgLarge

List<Img> sectionList = new List<Img> 
{ 
  new Img
  {
      ImgSmall="Img/NG.png", Name="New Game", ImgLarge="Img/NG.png"
  },

  new Img
  {
      ImgSmall="Img/HS.png", Name="High Score", ImgLarge="Img/HS.png"
  },
}

XAML(に適用されるスタイルテンプレートImages/Buttons)の場合:

<Button BorderThickness="0" Click="Button_Click_1" Style="{StaticResource {x:Static ToolBar.ButtonStyleKey}}">
    <Image x:Name="image" Width="64" Height="64" Source="{Binding ImgSmall}" />
</Button>

Button以上を作成するときにどちらが押されているかを確認するにはどうすればよい1 Buttonですか?渡されたオブジェクトの名前を確認するのが私の推測ですが、実際には手がかりがありません。

クリック方法:

private void Button_Click_1(object sender, RoutedEventArgs e)
{

}
4

1 に答える 1

4

この場合、非常に便利なプロパティを使用できますTag。XAMLにバインディングを設定してTagから、その値を確認します。

private void Button_Click_1(object sender, RoutedEventArgs e)
{
    FrameworkElement frameworkElement = sender as FrameworkElement;
    if(sender != null)
    {
        Img tag = frameworkElement.Tag as Img;

        // You directly have the Img that correspond to the button you have clicked
    }
}

XAMLの場合:

<Button BorderThickness="0" Click="Button_Click_1" Tag="{Binding}" Style="{StaticResource {x:Static ToolBar.ButtonStyleKey}}" >
    <Image x:Name="image" Width="64" Height="64" Source="{Binding ImgSmall}"/>
</Button>
于 2013-01-25T00:02:29.980 に答える