![](/img/trans.png)
[英]How i can Close User Control which were open in pop up from another User Control's button click Event in WPF
[英]How can I get my user control to listen to another control's event in winform?
我試圖在系統中做一個收藏夾控件,所以我有一個包含一些ComboBoxs,TextBoxes和按鈕的窗體,並且在我的代碼中,我向ComboBoxs,TextChange inTextBoxes和Click to按鈕添加了諸如SelectedValueChanged事件之類的嫉妒對象。
在每個控件旁邊,我都有一個面板控件,要向其中添加我創建的用戶控件的一個實例(ToolStripButton)以顯示收藏夾。
為了收集收藏夾的數據,我需要監聽表單中控件的事件(例如,監聽ComboBox的SelectedValueChanged事件並將此值保存到收藏夾)。
有沒有辦法可以從“收藏夾”用戶控件中監聽這些事件?
為了收聽某些事件,您應該訂閱該事件。 您可以在收藏夾用戶控件中訂閱事件(您需要將引發事件的控件傳遞到用戶控件中):
// code for you FavoritesUserControl
public void Subscribe(ListBox listBox)
{
listBox.SelectedValueChanged += ListBoxSelectedValueChanged;
}
private void ListBoxSelectedValueChanged(object sender, EventArgs e)
{
// do what you want
}
用法:
favorites1.Subscribe(listbox1);
或者,您可以在表單上訂閱事件,並在事件處理程序中通知用戶控件:
// code for your Form
private void ListBoxSelectedValueChanged(object sender, EventArgs e)
{
favorites1.DoSomething();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.