Winforms动态加载UserControls的可见性问题?

时间:2015-06-19 15:26:16

标签: winforms

所以我有一个程序可以根据特定条件动态加载用户控件,我遇到的问题是我的验证只是真正在加载的第一个文本框上工作。

为每个加载的usercontrol运行以下代码:

        Try
            TextBox = DirectCast(flpRepeatConts.Controls(Count).Controls("tbAnswerText"), Telerik.WinControls.UI.RadTextBox) ' Control(1) = TextBox Answer
            LabelAnsID = DirectCast(flpRepeatConts.Controls(Count).Controls("lblQID"), RadLabel)
            LabelMinHolder = DirectCast(flpRepeatConts.Controls(Count).Controls("lblMinTextHolder"), RadLabel)
            lblValidationText = DirectCast(flpRepeatConts.Controls(Count).Controls("lblValidationText"), RadLabel)

            If TextBox.Text.Length >= LabelMinHolder.Text And TextBox.Text.Length <= TextBox.MaxLength Then
                'Good to go.
                lblValidationText.Visible = False
            Else
                'Too little/not enough text
                If LabelMinHolder.Text = TextBox.MaxLength Then
                    lblValidationText.Text = String.Format("Text must be exactly {0} Characters! ({1} of {0})", LabelMinHolder.Text, TextBox.Text.Length)
                Else
                    lblValidationText.Text = String.Format("Text must be between {0} and {1} Characters!", LabelMinHolder.Text, TextBox.MaxLength)
                End If
                inError = True
                lblValidationText.Visible = True
            End If

        Catch ex As Exception
            'Exception Handling Here
        End Try

        Count += 1

这里的真正问题是,第一个标签之后的标签将永远不会显示(除非在其各自的文本框中至少有一个字符,在这种情况下错误信息会显示)。我和#39; m难倒,希望另一双眼睛能看到我不知道的东西。 我设置了断点并逐步执行此操作,文本和可见性 实际上已设置,但它们无法生效。

0 个答案:

没有答案