2013-03-18 67 views
0

我有一个设计和代码隐藏的ascx页面。我想在具有不同ID名称的aspx页面中向导控件的每个wizardstep中调用该页面。 但由于每个向导的aspx页面中的ascx页面id的变化,我需要使用ascx页面的不同ID编写相同的代码。使用不同的ID名称在aspx中调用ascx页面

在register.aspx页

<i><asp:WizardStep ID="WizardStep2" runat="server" Title="schooling"> 
     <div class="content"> 
      <addr:addr ID="address_acx" runat="server"/> //calling usercontrol with Id "address_ascx"   
     </div> 
</i> 
</asp:WizardStep> 

和一个函数来获取值后面的代码:

public string[] getASCXvalues() 
{ 

     string school_name = null, sid = null, section = null; 
     CheckBox chk = (CheckBox)address_acx.ID .FindControl("chk_school"); 
     TextBox txt_school = (TextBox)address_acx.FindControl("txt_school"); 
     if (chk.Checked || address_acx.schoolnames <= 1) 
     { 
      school_name = txt_school.Text; 
      sid = BAL.Class1.getmaxid() + 1; 
      int val = Convert.ToInt32(sid.Substring(1, 6)) + 1; 
      sid = sid.Substring(0, 1) + val.ToString().PadLeft(6, '0'); 
     } 
     else 
     { 
      school_name = address_acx.selectedschollname; 
      sid = address_acx.selectedschoolcode; 
     } 
     CheckBox chk_sec = (CheckBox)address_acx.FindControl("chk_section"); 
     TextBox txt_sec = (TextBox)address_acx.FindControl("txt_section"); 
     if (chk_sec.Checked || address_acx.sectioncount <= 1) 
     { 
      section = txt_sec.Text; 
     } 
     else 
     { 
      section = address_acx.selectedsec; 
     } 
     string[] a = new string[10]; 
     a[0] = address_acx.selectedyear; 
     a[1] = address_acx.selectedmandal; 
     a[2] = address_acx.selectedvillage; 
     a[3] = school_name; 
     a[4] = sid; 
     a[5] = section; 
     return a;   
} 

现在的问题是在向导的下一步我要重新写上面的函数与另一个ascx页面的ID。

回答

0

您可以通过发送用户控件(ascx)作为函数的参数来解决您的问题。

public string[] getASCXvalues(UserControl addressControl) 
{ 
     string school_name = null, sid = null, section = null; 
     CheckBox chk = (CheckBox)addressControl.FindControl("chk_school"); 
     TextBox txt_school = (TextBox)addressControl.FindControl("txt_school"); 
} 
+0

我已经试过了。如果我将usercontrol作为参数传递,它会显示错误,因为ascx页面包含获取aspx页面中使用的一些值的协议 – user2181131 2013-03-18 07:12:01

相关问题