2011-08-08 214 views
0

我有一个自定义控件,我使用图片框,标签和组合框创建了自定义控件,我想创建一个自定义SelectedIndexChanged事件处理程序,以便在索引已执行时执行操作改变了组合框,但是由于它是一个自定义控件,这个事件在默认情况下是不可用的,所以我希望我可以创建一个。自定义控件和事件对我来说是新的。任何帮助都会令人满意,非常感谢。将事件处理程序添加到自定义控件

回答

0

如果你只是想瞒着该项目现在选择你可以做到这一点触发事件:

public event EventHandler SelectionChanged; 

protected virtual void OnSelectionChanged() { 
    if (SelectionChanged != null) { 
     SelectionChanged(this, new EventArgs()); 
    } 
} 

只是打电话给你的控制和事件SelectionChangedOnSelectionChanged()将被解雇。

如果你也想知道哪些元素现在选择您可以使用下面的,只需更换object[]与objectarray:

public event SelectionChangedEventHandler SelectionChanged; 
public delegate void SelectionChangedEventHandler(object sender, SelectionChangedEventArgs e); 

protected virtual void OnSelectionChanged(object[] SelectedItems) { 
    if (SelectionChanged != null) { 
     SelectionChanged(this, new SelectionChangedEventArgs(SelectedItems)); 
    } 
} 

public class SelectionChangedEventArgs : EventArgs { 
    public object[] SelectedItems { get; private set; } 

    public SelectionChangedEventArgs(object[] SelectedItems) { 
     this.SelectedItems = SelectedItems; 
    } 
} 
相关问题