好的,所以我构建了一个处理所见即所得编辑的自定义控件。基本上在 1 个控件上,我有多个所见即所得编辑器的实例。所以一个可能是为了编辑,比方说,一个食谱。另一个可能是该食谱的注释。
我的所见即所得编辑器上有一个按钮,该按钮使用一个界面来对同时包含它们的控件进行回调,所以我知道我的父控件何时单击该按钮。如何找出哪个控件触发了回调?
例子
主表格
public partial class MyCustomControl: RecipeControl.ISavedButton {
private void SaveButton_Clicked(){
//Do Work but how do I find out which control fired this event?
//Was it RecipeControl1 or RecipeControl2
}
}
我的解决方案
在我的食谱控制上,我这样做了。
private void RecipeSaveButton_Clicked(object sender, EventArgs e){
if (RecipeSaveButtonListener != null) {
RecipeSaveButtonListener.RecipeSaveButton_Clicked(this, EventArgs.Empty); //This referring to the control, not the button.
}
}
在我的主要控制上,我这样做了。
private void RecipeSaveButton_Clicked(object sender, EventArgs e){
if (sender == RecipeControl1){
} else if (sender == RecipeControl2) {
}
}
我已经实现了这两个答案,并且都非常非常好。对不起,我不能接受他们两个。