使用 Asp.Net 创建带有回复选项的评论框

Creating Comment box With Reply Option using Asp.Net

我正在尝试为我的网站创建一个具有回复选项的评论框

下面是我的aspx页面

 <div>

                <asp:Repeater runat="server" ID="repAnswer">
                    <ItemTemplate>
                        <h6>Answer</h6>

                        <p><%# Eval("Answer") %></p>
                        <asp:Label runat="server" ID="lblAnsId" Text='<%# Eval("AnsId")%>' Visible="false"></asp:Label>

                        <a class="link" id='lnkReplyParent<%#Eval("AnsId") %>' href="javascript:void(0)" onclick="showReply(<%#Eval("AnsId") %>);return false;">Reply</a>   

                        <a class="link" id="lnkCancle" href="javascript:void(0)" onclick="closeReply(<%#Eval("AnsId") %>);return false;">Cancle</a>  

                          <div id='divReply<%#Eval("AnsId") %>' style="display:none;">  
                             <asp:TextBox ID="textCommentReplyParent" CssClass="input-group" runat="server" Width="300px" TextMode="MultiLine" ></asp:TextBox>  
                             <br />  
                             <asp:Button ID="btnReplyParent" runat="server" Text="Reply" OnClick="btnReply_Click" /></div>

                    </ItemTemplate>
                </asp:Repeater>

            </div>
             <div style="margin-top:100px">
                 <h5>Your Answer</h5>
                 <hr />
                <CKEditor:CKEditorControl ID="txtAddAnswer" BasePath="Admin/ckeditor/" runat="server">
             </CKEditor:CKEditorControl>
                 <asp:Button runat="server" ID="btnAnswer" Text="Submit Answer" OnClick="btnAnswer_Click"/>
            </div>

我已经使用 Repeater 绑定了我的回答或评论。在中继器内我给了两个 link pne 是回复另一个是 cancel.when 有人点击回复一个新的文本框和按钮打开用于回复

下面是我的cs页面

 protected void btnReply_Click(object sender, EventArgs e)
    {
        foreach (RepeaterItem row in repAnswer.Items)
        {
            Label lblNewAnsIdholder = (Label)row.FindControl("lblNewAnsIdholder");
            TextBox txtReplyToAnswer = (TextBox)row.FindControl("txtReplyToAnswer");

            OnlineSubjects onlinesub = new OnlineSubjects()
            {
                reply = txtReplyToAnswer.Text.Trim(),
                AnsId = Convert.ToInt32(lblNewAnsIdholder.Text.ToString())
            };
            onlinesub.addAnswer();
        }          
    } 

我不知道如何在转发器中使用文本框,但在通过 google 搜索后,我得到了类似这样的信息,我不确定这是对还是错。 我为我的 class 创建对象的那一行我从那里收到错误 我想将文本框的值作为参数传递 请帮助我做到这一点。 谢谢

你应该试试,

TextBox txtReplyToAnswer = ((TextBox)row.FindControl("txtReplyToAnswer")).Text;

希望这会奏效。