我在两个不同的aspx表单中使用asp.net用户控件。如何根据调用表单自定义用户控件的事件处理?
void ComboboxCountry_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
if it is form1 that called the User-control => do process 1
if it is form2 that called the User-control => do process 2
}谢谢。
发布于 2013-08-30 08:08:06
尽管这是一个很好的设计,但是您正在尝试实现:您可以向您的控件添加一个属性,例如
public BehaviourEnum Behaviour { get; set; } // You need to implement the enum那你就可以
void ComboboxCountry_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
if (Behaviour == BehaviourEnum.Behave1) // etc.
}实现控件的页面需要相应地设置行为属性。
编辑:如果您的控件需要与父页面交互,我将在父页面上引入一个接口。然后你可以设计出这样的东西:
// The page containing this control needs to implement IMasterpage
public IMasterpage Masterpage { get; set; }
void ComboboxCountry_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
// Propagate the behavour to your parent page
Masterpage.CallwatheverMethodInYourInterface();
}目标是将依赖于父页的行为传播到父页本身。这样你就可以保持你的控制苗条和独立。
https://stackoverflow.com/questions/18527580
复制相似问题