我有一个GridView,显示其中的某些项目。每个项目都有一个编辑按钮,按下编辑按钮加载项目旁边的用户控件。此用户控件有一个关闭按钮,按下关闭按钮删除用户控件。
蓝色矩形代表gridview中的项目。单击粉红色添加按钮时,红色用户控件将加载。现在单击红色矩形上的关闭按钮,它应该删除红色项目并恢复到原始状态。 我已经使用模板选择器添加了usercontrol,它工作正常。但关闭按钮不会删除它。我尝试了以下方法来删除:
(GridView)this.Parent).Items.Remove(this);
在添加断点然后检查我发现this.Parent为null。我被困了。我怎么办?我正在使用c#,xaml,winrt,visual studio 2012
答案 0 :(得分:0)
如果您需要处理可视树,请尝试以下操作:
var _Parent = VisualTreeHelper.GetParent(sender as UserControl) as GridView;
_Parent.Items.Remove(sender as UserControl);
但是,从GridView中删除项目应该通过操纵绑定到ViewModel中GridView的ItemsSource的ObservableCollection来完成。不是这样,可能......