在列表框中显示文本框中的文本 - ASP.net& VB.net

时间:2014-04-15 04:30:14

标签: asp.net vb.net listbox

ASP.net代码(ListBox)

<asp:ListBox class="mailList" ID="ListBox1" runat="server" 
          SelectionMode="Multiple" >
          <asp:ListItem Value="0">Welcome to PVAL Portal</asp:ListItem>
          <asp:ListItem Value="1">Reminder</asp:ListItem>
          <asp:ListItem Value="2">User2</asp:ListItem>
</asp:ListBox>

ASP.net代码(TextBox)

<asp:Label ID="Label3" runat="server" Text="Title:"></asp:Label>
<asp:TextBox ID="messageTitle" runat="server"></asp:TextBox>
<asp:TextBox ID="messageText" runat="server"TextMode="MultiLine" ></asp:TextBox>

VB.net代码

Protected Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
    Dim curItem As String = ListBox1.SelectedIndex()

    If curItem = 0 Then
        messageTitle.Text = "Testing1"
        messageText.Text = "Hello"
    ElseIf curItem = 1 Then
        messageTitle.Text = "Testing2"
        messageText.Text = "Hello2"
    ElseIf curItem = 2 Then
         messageTitle.Text = "Testing3"
        messageText.Text = "Hello3"
    End If
End Sub

当我运行程序并从列表框中选择任何项目时,它没有在文本框中显示文本。我找到了一种方法来解决这个问题,为它添加一个按钮。但我真的不喜欢它。只是想知道是否有任何方法在我从ListBox中选择其中一个项目而不使用按钮后立即在文本框中显示文本?

提前感谢您并感谢它。

2 个答案:

答案 0 :(得分:0)

在asp.net列表框的html中添加Autopostback = true。因为现在您的列表框在更改选择时不会回发。

<asp:ListBox class="mailList" ID="ListBox1" runat="server" 
      SelectionMode="Multiple" AutoPostBack="true">
      <asp:ListItem Value="0">Welcome to PVAL Portal</asp:ListItem>
      <asp:ListItem Value="1">Reminder</asp:ListItem>
      <asp:ListItem Value="2">User2</asp:ListItem>
</asp:ListBox>

答案 1 :(得分:0)

您应该在ListBox中将AutoPostBack属性设置为true