【问题标题】:Radio Button Check code useless单选按钮检查代码无用
【发布时间】:2014-05-14 03:39:03
【问题描述】:

我在文本框中从数据库中获取文本,然后使用该文本我想要做的是选择选中的特定单选按钮。

我尝试了很多方法来实现目标,但还没有达到解决方案。

If Edt_Premium_Payment.Text = "YLY" Then
    Edt_RB_YLY.Checked = True        
ElseIf Edt_Premium_Payment.Text = "HLY" Then
    Edt_RB_HLY.Checked = True
ElseIf Edt_Premium_Payment.Text = "QLY" Then
    Edt_RB_QLY.Checked = True
ElseIf Edt_Premium_Payment.Text = "MLY" Then
    Edt_RB_MLY.Checked = True
End If

已编辑:- 抱歉,我忘记了调试器。
以下四个单选按钮似乎仍未选中(未选中)。
我的意思是他们的 .Checked 属性看起来是假的。

已编辑2:-
实际上 Edt_Premium_Payment 是我获取价值的文本框(数据库文本)。
然后我将文本与单选按钮进行比较。
当文本与任何单选按钮匹配时,该单选按钮将显示为选中状态。
假设 Edt_Premium_Payment 文本与 Edt_RB_YLY 匹配,这是一个 单选按钮。之后,此单选按钮应显示为选中状态。
但对我来说,它会显示未选中的特定 单选按钮
PerformClick() 只是标记选中了单选按钮,所以这就是我想要的。

我不能上传图片所以假设这是图片,我希望它足以理解。

1) ( )YLY  
2) ( )HLY  
3) ( )QLY  
4) ( )MLY  

现在 Edt_Premium_Payment.text 包含文本“YLY”。所以我应该得到输出:

1) (.)YLY  
2) ( )HLY  
3) ( )QLY  
4) ( )MLY  

我得到的不是这个输出,而是所有未选中的输出。如:

1) ( )YLY  
2) ( )HLY  
3) ( )QLY  
4) ( )MLY  

已编辑 3
也许这会帮助你们理解我的问题。
以下代码无响应。没有冲突,没有错误,只是没有响应。

Private Sub Go_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Go.Click

Select Case dr.Item("Premium_Payment_Mode").ToString
                Case "HLY"
                    Edt_RB_HLY.Checked = True
                Case "MLY"
                    Edt_RB_MLY.Checked = True
                Case "QLY"
                    Edt_RB_QLY.Checked = True
                Case "YLY"
                    Edt_RB_YLY.Checked = True
                Case Else
                    Edt_Premium_Payment.Text = dr.Item("Premium_Payment_Mode")
            End Select

End Sub  

我还尝试了包含 3 个单选按钮、1 个文本框和一个按钮的新项目。详细信息如下:
单选按钮文本为: YLY、QLY 和 MLY。
单选按钮名称分别为: YL、QL 和 ML。
文本框名称是: 一个

现在我尝试的代码是

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    If a.Text = YL.Text Then
        YL.Checked = True
    ElseIf a.Text = ML.Text Then
        ML.Checked = True
    ElseIf a.Text = QL.Text Then
        QL.Checked = True

    End If
End Sub
End Class  

在 VB 2013 中,单选按钮具有检查状态,但在 VB 2010 中不可用。
我想通过代码将检查状态从 0 更改为 1。
Guyz 请现在理解我的问题已经绰绰有余了,F1。
F1.
F1.

【问题讨论】:

  • 当您逐行执行此代码时,调试器在做什么?
  • 查看问题中已编辑的部分,并感谢 LarsTech 的提醒。
  • 也许您需要向我们展示您在单选按钮的单击事件中所做的事情。
  • 不要打电话给PerformClick();
  • 我在没有使用 RadioButton.Clicked = true 的 PerformClick() 事件的情况下进行了尝试,但仍然无法正常工作。

标签: vb.net visual-studio-2010 visual-studio vb.net-2010


【解决方案1】:

你的意思是你想要这样的东西......?

Select Case Edt_Premium_Payment.Text
    Case "YLY"
        Edt_RB_YLY.Checked = True 
    Case "MLY"
        Edt_RB_MLY.Checked = True 
    ....
End Select

Select 语句将运行第一个相等的分支,

请注意,如果您在选择单选按钮时遇到问题,则需要先提高自己的技能,然后再考虑做任何与付款相关的事情。 (来自控件名称Edt_Premium_Payment 的猜测)。这是一个非常高级的话题,很容易出错。

【讨论】:

  • 感谢Basic,通过寻求超越质疑我的问题的解决方案。我尝试了选择案例也没有奏效。单选按钮仍未选中。付款只是我自己的工作。我真的被困在这里了。
猜你喜欢
  • 2018-10-13
  • 2017-06-05
  • 2015-12-10
  • 2019-05-29
  • 2020-07-14
  • 1970-01-01
  • 1970-01-01
  • 2019-01-15
  • 1970-01-01
相关资源
最近更新 更多