0

了解しました。現在、さまざまなファイルがリストボックスに入力されています。

ファイルを選択し、[追加]ボタンをクリックして、そのテキストボックスにアイテム名を入力します。

次に、別のアイテムを選択し、[追加]ボタンをクリックして、名前の付いたアイテムを空のテキストボックスに入力します。

最初のテキストボックスにデータを入力できますが、2番目の項目を選択すると、空のテキストボックスを表示できません。

これが、最初のテキストボックスにデータを入力する方法に関する現在のコードです。コメントアウトされたセクションは、それらのアイテムを別のリストボックスに追加するためのものでしたが、機能しましたが、カスタムオーダーを指定する必要があります。これは、各アイテムをテキストボックスに追加することを考えていました。

    Private Sub ButtonAdd_Click(sender As System.Object, e As System.EventArgs) Handles ButtonAdd.Click
    'Dim selectedItems = (From i In ListBox1.SelectedItems).ToArray()
    'For Each selectedItem In selectedItems
    'ListBox3.Items.Add(selectedItem)
    'ListBox1.Items.Remove(selectedItem)
    'Next

    TextBox1.Text = ListBox1.SelectedItem

    End Sub

助言がありますか?

4

2 に答える 2

0

次のようなものを試してください。

Private Sub ButtonAdd_Click(sender As System.Object, e As System.EventArgs) Handles ButtonAdd.Click
    If string.IsNullOrEmpty(TextBox1.Text) Then 
        TextBox1.Text = ListBox1.SelectedItem
    ElseIf string.IsNullOrEmpty(TextBox2.Text) Then 
        TextBox2.Text = ListBox1.SelectedItem
    ElseIf string.IsNullOrEmpty(TextBox3.Text) Then 
        TextBox3.Text = ListBox1.SelectedItem
    End If
End Sub
于 2012-04-27T18:41:46.643 に答える
0

簡単なデモをまとめました。

最初のaspxページ:

<asp:ListBox id="lstItems" runat="server">
    <asp:ListItem>-- Select --</asp:ListItem>
    <asp:ListItem>Item 1</asp:ListItem>
    <asp:ListItem>Item 2</asp:ListItem>
    <asp:ListItem>Item 3</asp:ListItem>
    <asp:ListItem>Item 4</asp:ListItem>
</asp:ListBox>
<asp:Panel ID="pnlTextboxes" runat="server">
    <asp:TextBox ID="txt1" runat="server" />
    <asp:TextBox ID="txt2" runat="server" />
    <asp:TextBox ID="txt3" runat="server" />
    <asp:TextBox ID="txt4" runat="server" />
</asp:Panel>
<asp:Button id="btnAdd" Text="Add" runat="server" />

そして背後にあるコード:

Protected Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
    If lstItems.SelectedIndex <= 0 Then
        Return
    End If
    For Each ctrl As Control In pnlTextboxes.Controls
        If TypeOf ctrl Is TextBox Then
            Dim txt = CType(ctrl, TextBox)
            If String.IsNullOrEmpty(txt.Text) Then
                txt.Text = lstItems.SelectedValue
                Exit For
            End If
        End If
    Next
End Sub

アイテムをすでに選択している場合、これは追跡されないことに注意してください。

于 2012-04-27T18:59:17.303 に答える