![](/img/trans.png)
[英]Dynamically loading UserControl after clicking button on another UserControl
[英]Removing a usercontrol by clicking a button on it
我有一個GridView,其中顯示了某些項目。 每個項目都有一個編輯按鈕,按下編輯按鈕會在該項目旁邊加載一個用戶控件。 該用戶控件中有一個關閉按鈕,按關閉按鈕可刪除該用戶控件。
藍色矩形代表gridview中的項目。 單擊粉色添加按鈕后,將加載紅色用戶控件。 現在,單擊紅色矩形上的關閉按鈕,它將刪除紅色項並恢復到原始狀態。 我已經添加了使用模板選擇器的用戶控件,並且工作正常。 但是關閉按鈕不會將其刪除。 我嘗試了以下刪除方法:
(GridView)this.Parent).Items.Remove(this);
在添加斷點然后檢查時,我發現this.Parent為null。 我被卡住了,我該如何進行? 我正在使用C#,XAML,Winrt,Visual Studio 2012
如果您需要處理視覺樹,請嘗試以下操作:
var _Parent = VisualTreeHelper.GetParent(sender as UserControl) as GridView;
_Parent.Items.Remove(sender as UserControl);
但是,應該通過操作綁定到ViewModel中GridView的ItemsSource的ObservableCollection來完成從GridView中刪除項目的操作。 可能不是這樣
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.