1

内部にグリッドとボタンのコントロールがあり、取得したいのは、クリックされたボタンの行インデックスと列インデックスです。Silverlight は初めてなので、助けてください

<UserControl
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="testgrid.MainPage"
    Width="640" Height="480">


    <Grid x:Name="LayoutRoot" Background="Azure" Height="400" Width="400" >
        <Grid.ColumnDefinitions >
            <ColumnDefinition Width="100*" />
            <ColumnDefinition Width="100*" />
            <ColumnDefinition Width="100*" />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="100*" />
            <RowDefinition Height="100*" />
            <RowDefinition Height="100*" />
        </Grid.RowDefinitions>
        <Button x:Name="button1"  Grid.Column="0" Grid.Row="0" Click="grid_Item_Click">
            <Image x:Name="img1" Source="/testgrid;component/Images/kobe_bryant1.jpg" Stretch="Uniform" ></Image>
        </Button>
           <Button x:Name="button2"  Grid.Column="1" Grid.Row="0" Click="grid_Item_Click">
            <Image x:Name="img2" Source="/testgrid;component/Images/kobe_bryant1.jpg" Stretch="Uniform" ></Image>
        </Button>
           <Button x:Name="button3"  Grid.Column="2" Grid.Row="0" Click="grid_Item_Click">
            <Image x:Name="img3" Source="/testgrid;component/Images/kobe_bryant1.jpg" Stretch="Uniform" ></Image>
        </Button>
           <Button x:Name="button4"  Grid.Column="0" Grid.Row="1" Click="grid_Item_Click">
            <Image x:Name="img4" Source="/testgrid;component/Images/kobe_bryant1.jpg" Stretch="Uniform" ></Image>
        </Button>   
    </Grid>
</UserControl>

そして、私が持っている後ろのページ

 private void grid_Item_Click(object sender, RoutedEventArgs e)
        {
}
4

1 に答える 1

1

これを試すことができます

private void grid_Item_Click(object sender, RoutedEventArgs e) 
{ 
Button btn = sender as Button; 
int x=(int)btn.GetValue(Grid.RowProperty); 
int y=(int)btn.GetValue(Grid.ColumnProperty);  
  MessageBox.Show("row"+x.ToString()+"column"+y.ToString());
 }
于 2012-04-06T09:07:34.073 に答える