1

午後全部、

SQLデータベースからデータを抽出し、ユーザーに2つのオプション(毎週/毎月)を選択できるドロップダウンリストがあります。データベースには、これらのそれぞれのIDがあります。Weeklyは1に設定され、Monthlyは2に設定されます。このドロップダウンは、選択したアイテムに基づいてデータを抽出/表示するグリッドビューにリンクされています。これはすべて完全に正常に機能します。

私が抱えているこの問題は、Page_ loadイベントにコードを追加して、選択したアイテムをテキストボックスに入力したいということです。また、ユーザーがこのページにアクセスするときに、ドロップダウンリストをデフォルトとして毎週に設定したいと思います。次の2ビットのコードは機能すると思いましたが、「入力文字列が正しい形式ではありませんでした」というメッセージが表示されます。

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    'This works fine
    lblTodaysDate.Text = GetDate()


    'I thought i could complete an If Statement to get the text box to work.
    If DropDownList1.SelectedValue = 1 Then
        txtMeeting.Text = "SMC Weekly Meeting"
    Else
        txtMeeting.Text = "SMC Monthly Meeting"
    End If


End Sub

.netは初めてですが、intを文字列に変換する必要があるかもしれないことを読んだことがありますか?

事前の助けは大いに喜ばれるでしょう。

よろしくベティ。

4

3 に答える 3

2

次のように、目的の値を引用符で囲んでみてください。

If DropDownList1.SelectedValue = "1" Then
    txtMeeting.Text = "SMC Weekly Meeting"
Else
    txtMeeting.Text = "SMC Monthly Meeting"
End If
于 2012-04-12T11:58:31.337 に答える
1

最初に値が数値であることを確認し、数値である場合は整数に変換し、次の値と比較し1ます。

If IsNumeric(DropDownList1.SelectedValue) AndAlso CInt(DropDownList1.SelectedValue)=1
    txtMeeting.Text = "SMC Weekly Meeting"
Else
    txtMeeting.Text = "SMC Monthly Meeting"
End If
于 2012-04-12T11:57:43.197 に答える
0

IsPostBackそうしないと、ddl SelectValue がリセットされるかどうかを確認する必要があります。

注意: 私の Vb.Net は少し錆びています

すなわち

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    If Me.IsPostBack Then

        'This works fine
        lblTodaysDate.Text = GetDate()

        'I thought i could complete an If Statement to get the text box to work.
        If DropDownList1.SelectedValue = "1" Then
            txtMeeting.Text = "SMC Weekly Meeting"
        Else
            txtMeeting.Text = "SMC Monthly Meeting"
        End If
    Else
        ' Put your code to populate the ddl here


    End If
End Sub
于 2012-04-12T12:04:43.317 に答える