У меня есть раскрывающееся меню, и в зависимости от того, какой элемент выбран, я вызываю веб-службу, а затем динамически создаю несколько текстовых полей.
При первом раскрытии меню и выборе элементаэто работает отлично, и текстовые поля создаются и заполняются динамически.Однако в следующий раз, когда я выпадаю из меню (после первой обратной передачи) и выбираю что-то другое ... после второй обратной передачи исходные значения остаются в текстовых полях.
Я очищаю весь текстЯщики из заполнителя, затем воссоздавая их, а затем устанавливая НОВОЕ значение, как они могут сохранять СТАРОЕ значения ... особенно, если я управляю ими. clear со страницы?
Примечание: ВторойКогда они создаются, идентификаторы текстового поля ДОЛЖНЫ быть одинаковыми.Может ли это быть как-то связано с этим?Эта дублирующая функциональность идентификатора должна поддерживаться.
Мой код, вызываемый из Page_Load, выглядит следующим образом: (отредактировано для добавления дополнительного кода)
Private Sub RefreshEntity()
Dim XmlRecords As New XmlDocument
Dim XmlRecordsNode As XmlNode
Dim EntityType As String = EntityTypes.SelectedValue
Dim Entity As String = RecordValue.Value
Dim FieldName As String
Dim FieldValue As String
FieldPlaceHolder.Controls.Clear()
If RecordList.SelectedValue <> "Select..." Then
Try
XmlRecordsNode = LoginInfo.SharePointConnectWebService.GetMetaData(LoginInfo.WSUser, LoginInfo.WSPass, _
EntityType, Entity)
XmlRecords.LoadXml(XmlRecordsNode.OuterXml)
Catch ex As Exception
ConfirmLabel.Text = "<b>Error:</b><br>" & ex.Message.ToString
Return
End Try
Else
SetProperties.Visible = False
Return
End If
For Each OneNode As XmlNode In XmlRecords.SelectNodes("Fields").Item(0).ChildNodes
FieldName = OneNode.Name
FieldValue = OneNode.InnerText
Dim newLabel As Label = New Label()
newLabel.Text = FieldName & ": "
Dim newTextBox As TextBox = New TextBox()
newTextBox.ID = "Field-" & FieldName
newTextBox.Text = FieldValue
Dim newLine As Label = New Label()
newLine.Text = "<br><br>"
FieldPlaceHolder.Controls.Add(newLabel)
FieldPlaceHolder.Controls.Add(newTextBox)
FieldPlaceHolder.Controls.Add(newLine)
Next
SetProperties.Visible = True
End Sub
скрытое поле, которое заполняется в каждом Page_Load:
RecordValue.Value = RecordList.SelectedValue
Где RecordList - это мое меню DropDown.