2012-04-12 57 views
1

下午所有,输入字符串的不正确的格式

我有一个从我的SQL数据库中提取数据,并给出了用户两个选项(每周/每月)选择的下拉列表。数据库中有每个这样的ID。每周设置为1,每月设置为2.此下拉链接到一个基于所选项目提取/显示数据的网格视图。所有这些工作都很好。

我遇到的这个问题是,我想在我的Page_加载事件中添加一些代码来填充选定项目的文本框。当用户访问你的页面时,我还想将下拉列表设置为默认为每周。我认为下面两段代码可以工作,但是我得到的信息'输入字符串没有正确的格式'。

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转换为字符串?

提前提供的任何帮助都会很受欢迎。

Registers Betty。

+0

哪条线导致错误? – mgnoonan 2012-04-12 11:58:17

+0

你说'lblTodaysDate.Text = GetDate()'工作正常,但是什么_is_'GetDate()'?要获取当前日期,只需要'Date.Now.ToShortDateString'。 – 2012-04-12 12:01:30

回答

1

首先检查你的价值是数字,如果是这样,然后将其转换为整数,并将其与1

If IsNumeric(DropDownList1.SelectedValue) AndAlso CInt(DropDownList1.SelectedValue)=1 
    txtMeeting.Text = "SMC Weekly Meeting" 
Else 
    txtMeeting.Text = "SMC Monthly Meeting" 
End If 
+0

非常感谢您的帮助,因为所选的值是数字而不是字符串,所以这可以成为一种享受。 – Betty 2012-04-12 12:44:06

2

刚刚尝试在引号引起的期望值,这样的:

If DropDownList1.SelectedValue = "1" Then 
    txtMeeting.Text = "SMC Weekly Meeting" 
Else 
    txtMeeting.Text = "SMC Monthly Meeting" 
End If 
0

你需要检查IsPostBack否则DDL SelectValue将被重置

NB:我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