0
<ListBox>
    <Grid>
        <Button Name="button1" Click="buttonDelete_Click"></Button>
    </Grid>
    <Grid>
        <Button Name="button2" Click="buttonDelete_Click"></Button>
    </Grid>
    <Grid>
        <Button Name="button3" Click="buttonDelete_Click"></Button>
    </Grid>
    <Grid>
        <Button Name="button4" Click="buttonDelete_Click"></Button>
    </Grid>
</ListBox>

ボタンクリックイベントを使用しています。リストボックスから削除したいGrid ((Button)sender).Parentので、ボタン自体を含むグリッドのすべての子も削除します。

私のアプリケーションでは、c# を使用したコードでグリッドに 19 個のコントロール (ボタンを含む) を追加していることに注意してください。

4

3 に答える 3

3
Grid grid =   (((Button)sender).Parent) as Grid;
if(grid != null)
{
   ListBox listbox = grid.Parent as ListBox;
   if(listbox != null)
   {
     listbox.Children.Remove(grid);
   }
}
于 2012-11-27T19:10:54.087 に答える
1

myListbox.Items.Remove(((sender as FrameworkElement).Parent)

于 2012-11-27T15:44:51.287 に答える
0

これを試して

Grid _grid =   (Grid)(((Button)sender).Parent);
ListBox box = _grid.Parent as ListBox;
box.Children.Remove(_grid);
于 2012-11-27T12:00:18.597 に答える