【问题标题】:How to set a combo box to a specific item with the press of a button (Visual Basic)如何通过按下按钮将组合框设置为特定项目 (Visual Basic)
【发布时间】:2021-02-01 16:40:18
【问题描述】:

我是初学者,请原谅这个愚蠢的问题。

所以基本上我有一个“虚拟”按钮,它通过填写姓名、年龄、日期等来创建一个新患者。
但我不知道如何使组合框也设置为特定项目。你们能帮帮我吗?组合框是倒数第二个,代码如下:

Private Sub Btn_dummy_Click(sender As Object, e As EventArgs) Handles Btn_dummy.Click
    Me.Txt_Name.Text = "Mustermann"
    Me.Txt_Vorname.Text = "Max"
    Me.Dtp_Gebdat.Value = Today().AddDays(-365 * 12)
    Me.Txt_Strasse.Text = "Musterstrasse"
    Me.Txt_Hausnr.Text = "123A"
    Me.Mtb_Plz.Text = "12345"
    Me.Txt_Ort.Text = "Musterort"
    Me.Cmb_Krankenkasse = 
    Me.Txt_Versnr.Text = "987654"
End Sub

【问题讨论】:

  • 你需要指定Cmb_Krankenkasse的DataSource是什么。只是字符串?你是怎么填的?使用Cmb_Krankenkasse.SelectedIndex = Cmb_Krankenkasse.FindString("Some value")进行测试

标签: vb.net winforms button combobox


【解决方案1】:

这实际上取决于您如何设置组合框。如果您通过设计器添加选项,那么您将希望使用 SelectedIndex。

Me.Cmb_Krankenkasse.SelectedIndex = 1 ' Or whatever index you want to select

如果您使用绑定来填充您的组合框,那么您可以使用 SelectedItem。

Me.Cmb_Krankenkasse.SelectedItem = selectedPersonEntry

无论哪种方式,您都将设置组合框的 Selected 属性。

例子:

Private Sub Btn_dummy_Click(sender As Object, e As EventArgs) Handles Btn_dummy.Click
    Me.Txt_Name.Text = "Mustermann"
    Me.Txt_Vorname.Text = "Max"
    Me.Dtp_Gebdat.Value = Today().AddDays(-365 * 12)
    Me.Txt_Strasse.Text = "Musterstrasse"
    Me.Txt_Hausnr.Text = "123A"
    Me.Mtb_Plz.Text = "12345"
    Me.Txt_Ort.Text = "Musterort"
    Me.Cmb_Krankenkasse.SelectedIndex = 1
    Me.Txt_Versnr.Text = "987654"
End Sub

【讨论】:

  • 这正是我所需要的!非常感谢你。我什至尝试使用 SelectedIndex 我只是用错了大声笑
  • 很高兴它有帮助!
【解决方案2】:

用户应该从组合框中选择一些东西,对吧? 最好订阅选中项事件。 它的工作原理是这样的:

Public NotInheritable Class Form1
    Private gesetzliche_KK As String

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        ComboBox1.Items.AddRange({"Viactiv", "Barmer", "Techniker"})
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
        gesetzliche_KK = CStr(ComboBox1.SelectedItem)
    End Sub
End Class

至少对于这个英语论坛,您应该将变量名翻译成英文。 Du solltest, zumindest für dieses englisch-sprachige Forum, deine Variablennamen ins Englische übertragen。

【讨论】:

    猜你喜欢
    • 2011-05-04
    • 2014-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多