【问题标题】:Multiple inputs in a single textbox单个文本框中的多个输入
【发布时间】:2021-09-19 14:48:41
【问题描述】:

如何使用 VB.Net 使多个输入适合单行文本框?例如,单个文本框中的两个字符串输入,带有“;”之类的分隔符并从单行文本框中的两个字符串输入中获取结果。

【问题讨论】:

  • 一个TextBox 包含一个String。就是这样,仅此而已。如果您想要将 String 拆分为特定的分隔符,那么这就是您应该研究的内容。这与TextBoxes 无关。 StringString
  • 同意@jmcilhinney!您可能想了解更多关于.split 功能的信息? vb.net-informations.com/string/vb.net_String_Split.htm
  • 所以你想通过用分隔符连接两个(或更多)输入源来填充文本框,然后解析给定位置的值?类似于 List(Of string) 的单行表示?
  • 或者将TextBox Multiline设置为True,然后使用TextBox.Lines获取多行输入。

标签: .net vb.net visual-studio textbox backend


【解决方案1】:

输入示例:a;b;c;d;e

你可以这样做:

Private Sub BtnSubmit_Click(sender As Object, e As RoutedEventArgs)
    Dim inputValues = txtInput.Text.Split(";"c)
    Dim result = ""

    For Each value In inputValues
        result &= value & vbNewLine
    Next

    MessageBox.Show(result)
    ' a
    ' b
    ' c
    ' d
    ' e
End Sub

在编辑答案之前,这一行是这样的:

Dim inputValues = txtInput.Text.Split(";")

这只有在你有 Option Strict Off 像@jmcilhinney 说的那样才有效

【讨论】:

  • 郑重声明,该代码无法使用Option Strict On 编译,您几乎应该始终使用Option Strict On
  • @jmcilhinney 感谢您的提示!我不知道,我已经确定了答案
  • 在项目级别打开Option Strict On,让它无处不在,而不仅仅是你所在的班级。
  • 同样从工具菜单 -> 选项 -> 项目和解决方案 -> VB Defaults 为所有未来的 vb.net 项目设置 Option Strict On。
  • 因为这只适用于 Option Strict Off - 不要这样做。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-19
  • 1970-01-01
  • 2014-06-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多