-1

我有 2 个 dropdowmlist,它的 aspx 代码在哪里

 <asp:DropDownList ID="ddlexpyear" runat="server" Width="50px" TabIndex="4"
                   DataTextField="" DataValueField="" AppendDataBoundItems="true"           
                   ValidationGroup="userinfo" DataSourceID="objectdatasource1" 
                   onselectedindexchanged="ddlexpyear_SelectedIndexChanged">
      <asp:ListItem Value="-1">--- Please select ---</asp:ListItem>                       
 </asp:DropDownList>
 <asp:Label ID="Label4" runat="server" Text="(Year)"></asp:Label>
 <asp:DropDownList ID="ddlexpmonth" runat="server" 
        AppendDataBoundItems="true" DataSourceID="objectdatasource2"
        DataTextField="" DataValueField="" TabIndex="4" 
        ValidationGroup="userinfo" Width="50px" 
        onselectedindexchanged="ddlexpmonth_SelectedIndexChanged">
     <asp:ListItem Value="0">--- Please select ---</asp:ListItem>
 </asp:DropDownList>
 <asp:Label ID="Label5" runat="server" Text="(Month)"></asp:Label>
 <sup style="color: Red;">*</sup> </td>

在这里,如果我选择year as 2month as 5want to save it as 2.5。如果 ii 选择year as 3month as 9iwant to save it as 3.9并且喜欢那样。

请帮我解决这个问题。

好的建议是可观的。

4

5 回答 5

1

您必须简单地combine选择值,然后将其转换为Double.

lblSave.Text = ddlexpyear.SelectedItem.Text + "." + ddlexpmonth.SelectedItem.Text;
double save = Convert.ToDouble(lblSave.Text);

如果你有DataValueField那么:

lblSave.Text = ddlexpyear.SelectedValue + "." + ddlexpmonth.SelectedValue;
double save = Convert.ToDouble(lblSave.Text);
于 2012-09-04T06:08:10.133 回答
1

你必须通过两种方式做到这一点

(1) 一种使用dropdownlist SelectedItemproperty的方式

lbltest.Text = ddlexpyear.SelectedItem.Text + "." + ddlexpmonth.SelectedItem.Text;
double test = Convert.ToDouble(lbltest.Text);

(2)另一种使用dropdownlist SelectedValueproperty的方式

 lbltest.Text = ddlexpyear.SelectedValue + "." + ddlexpmonth.SelectedValue;
 double test= Convert.ToDouble(lbltest.Text);

如果谷歌那么你肯定找到了。

我希望它对你有帮助。

于 2012-09-04T06:23:47.203 回答
1

你可以这样使用:

protected void ddlexpyear_SelectedIndexChanged(object sender, EventArgs e)
{
   Label4.Text = ddlexpyear.SelectedValue + "." + ddlexpmonth.SelectedValue;
} 
protected void ddlexpmonth_SelectedIndexChanged(object sender, EventArgs e)
{
   Label4.Text = ddlexpyear.SelectedValue + "." + ddlexpmonth.SelectedValue;
} 
于 2012-09-04T07:39:48.043 回答
0

您应该执行以下操作。
如果你不是设置"datavaluefield""datatextfield"代码端,那么设置这两个参数。
在 Datavaluefiled 中,您应该输入需要保存的参数(例如 1、2、3),并且 datatextfield 应该是需要在下拉列表中显示给用户的值(例如 1 月、2 月、...)

保存时执行以下操作。

检查两者是否都设置为 index -1
应该有任何非负整数值。

string Savevalue =  `ddlExpYear.selectedvalue.toString() + "." + 
.selectedvalue.tostring()`

希望它会有所帮助。

于 2012-09-04T06:10:05.240 回答
0

我不明白为什么这对你来说是个问题!

string year=ddlexpyear.SelectedValue.ToString();
string month=ddlexpmonth.SelectedValue.ToString();
string TotalExp=year + "." + month;

这应该可以解决您的问题

于 2012-09-04T06:10:58.117 回答