【问题标题】:Setting control text in parent form from modal popup从模式弹出窗口中设置父窗体中的控制文本
【发布时间】:2012-03-28 07:21:56
【问题描述】:

我在尝试从模式弹出窗口设置父文本框时遇到问题。

虽然我使用以下代码从模态弹出窗口中找到了控件 DirectCast(Parent.Page.Form.FindControl("ContentPlaceHolder1").FindControl("myAccordion").FindControl("txtTo"), TextBox).Text = str

当用户完成从复选框列表中的选择时,将在按钮单击时调用它。

当文本框为空时再次显示父页面时。

我的用户控件的场景是用户要从一个复选框列表中进行选择,该列表是一个电子邮件列表。

点击完成后,需要将选定的电子邮件转发到父网页。

然后在这种情况下,收件人文本框将填充用户选择的电子邮件。

【问题讨论】:

  • 您的 ModalPopupExtender 在哪里,您需要在哪里访问文本框?
  • 它在用户控件中,用户控件的父级将是文本框所在的位置
  • 所以您的用户控件中有一个 CheckBoxList SelectedIndexChanged 事件,想要关闭控件并通知“开启者”选择了必须在该页面的文本框中显示的值? TextBox 中显示了哪些信息? (要求提供有意义的答案)

标签: asp.net vb.net modalpopupextender


【解决方案1】:

您应该在UserControl 中为ListBox 中的选定项目提供公共属性。这使得从页面中检索(或设置)它变得很容易。

您还应该声明一个可以从 ListBox 的SelectedIndexChanged 事件中引发的事件。通过这种方式,页面能够处理此事件并相应地设置 TextBox 的文本。

例如(在 UserControl 中使用ModalPopupExtender):

Public Class PopupControl
    Inherits System.Web.UI.UserControl

    Public Event ItemChanged(ByVal popup As PopupControl)

    Public Property SelectedItem As String

    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) 
        Dim lb = DirectCast(sender, ListBox)
        Me.Visible = False

        Me.SelectedItem = lb.SelectedItem.ToString()
        RaiseEvent ItemChanged(Me)
    End Sub
End Class

在页面中:

Protected Sub PopupItemChanged(ByVal popup As PopupControl)Handles PopupControl1.ItemChanged
    Me.txtTo.Text = popup.SelectedItem
End Sub

【讨论】:

  • @Enzero:您页面的文本框在哪里?是否在任何类型的数据绑定控件(如 FormView)中,您在回发时从数据库重新绑定(例如在 Page_Load 中)?它在更新面板中吗?然后,您可以尝试将其 UpdateMode 设置为 Conditional,并在更改文本后从代码隐藏中调用 UpdatePanel.Update()
  • 当我第一次问这个问题时,可以看到文本框在手风琴中。
  • 我从来没有使用过 Accordion,因为它会破坏 ViewState 并且有 some painful characteristics。尝试在 Page_Init 中添加 Accordion1.FindControl("nothing");。您可能还想看看这里:forums.asp.net/p/1115188/1726464.aspx
  • 更新面板似乎终于完成了。我不得不将其设置为始终更新,因为我认为添加按钮不明智。谢谢
猜你喜欢
  • 1970-01-01
  • 2015-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-10
  • 2013-04-24
相关资源
最近更新 更多