2013-09-24 31 views
0

我有一个简单的用户控件,它将在页面上多次显示。所以我有一个循环数据集的面板,创建UC,填充文本框和复选框,然后将其添加到面板。未安装动态控件

面板添加UC但无论是文本框的值,也不该复选框被改变......

foreach (Issue iss in Case.Issues) 
{ 
    Comments comment = (Comments)LoadControl("~/UserControls/Comments.ascx"); 
    comment .ID = "Comment" + iss.IssueDetail.quality_control_issue_id.ToString(); 
    comment .Populate(iss); 
    QCComments_list.Controls.Add(comment); 
} 

我一定要做到这一点的预渲染或页面在它身上还是有令人耳目一新的方式UC的控制?

以下是UC标记。很简单。

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="ROI_Comments.ascx.cs" Inherits="QualityControl_UserControls.ROI_Comments" %> 
<!-- Field --> 
    <div id="ROI_Comment_DIV" class="field"> 
     <label>Corrections</label> 
     <input type="text" runat="server" id="comtxt" name="comtxt" /> 
     <asp:CheckBox ID="issue_critical" runat="server" Text="Critical" /> 
     <asp:Button runat="server" id="SaveButton" Text="Add Comment" OnClientClick="SaveComment(this);return false;" /> 
     <asp:Button runat="server" id="ROICancelButton" Text="Cancel" OnClientClick="return false;" /> 
     <asp:HiddenField runat="server" ID="hIssueID" /> 
    </div> 
    <!-- /Field --> 

和的.cs

public partial class ROI_Comments : System.Web.UI.UserControl 
     { 
      public ROI_Comments() 
      { 

      } 

      public void Populate(cQuality_Control_Issue _comment) 
      { 
       try 
       { 
        hIssueID.Value = _comment.IssueDetail.quality_control_issue_id.ToString(); 
        comtxt.Value = _comment.IssueDetail.quality_control_issue_description; 
        comtxt.Disabled = true; 
        issue_critical.Checked = _comment.IssueDetail.quality_control_issue_critical; 
        issue_critical.Enabled = false; 
        ROICancelButton.Text = "Delete"; 

       } 
       catch(Exception ex) 
       {} 
      } 
     } 
+0

你能告诉我们的代码和UserControl的标记吗? – Kenneth

+0

完成。它只有一个小的UC – user2807494

回答

0

没有什么从你出什么,但有可能是被设定的值之前出现的空引用异常显然是错误的。由于空的try/catch块,你不会知道它。它从不是一个好主意,因为你不知道是否发生异常。

+0

是的,当然你是对的尝试抓住 - 目前正在开发中。但是重写OnInit已经做到了。 因此,现在我打电话给我打电话base.Oninit(e)之前添加UC的功能。 – user2807494