如何在asp.net中将2个下拉列表中的值相乘,并在文本框中显示结果?

时间:2016-06-01 19:08:49

标签: c# asp.net

我正在为保险应用程序构建大量下拉列表。给定乘数值,每个列表都有许多选项。我的问题是如何从单独的下拉列表中将这些值相乘,以便在文本框中为自己提供最终的乘数值?我想使用从每个下拉列表中选择的任何值。

列表格式如下

<asp:DropDownList id="points" runat="server">
     <asp:ListItem Value="1.00">0</asp:ListItem>
     <asp:ListItem Value="1.05">1</asp:ListItem>
     <asp:ListItem Value="1.10">2</asp:ListItem>
     <asp:ListItem Value="1.18">3</asp:ListItem>
     <asp:ListItem Value="1.25">4</asp:ListItem>
     <asp:ListItem Value="1.32">5</asp:ListItem>
     <asp:ListItem Value="1.40">6</asp:ListItem>
     <asp:ListItem Value="1.47">7</asp:ListItem>
     <asp:ListItem Value="1.55">8</asp:ListItem>
     <asp:ListItem Value="1.62">9</asp:ListItem>
     <asp:ListItem Value="1.70">10</asp:ListItem>
     <asp:ListItem Value="1.77">11</asp:ListItem>
</asp:DropDownList>
<asp:DropDownList id="OtherPolicy" runat="server">
     <asp:ListItem value="1.20">Yes</asp:ListItem>
     <asp:ListItem value="1.00">No</asp:ListItem>
</asp:DropDownList>

我只编写了大约2周的时间,所以希望有人可以指出我正确的方向。我在搜索中找不到类似的东西。谢谢你们!

1 个答案:

答案 0 :(得分:2)

重要的是要记住,将要存储在DropDownLists中的值将是字符串,因此第一步是将它们转换为数值,这可以通过多种方式完成,但例如目的,您可以使用Convert.ToDecimal()方法:

// Convert your Points to a decimal
var pointsValue = Convert.ToDecimal(points.SelectedValue);

// Then convert your selection from your other DropDownList
var policyValue = Convert.ToDecimal(OtherPolicy.SelectedValue);

// Now that you have both of these, you can multiply them to retrieve your result
var result = pointsValue * policyValue;

// Store your result in another TextBox
YourResultTextBox.Text = result.ToString();

如果您有更多的DropDownLists或其他需要参与此计算的元素,您只需要确保解析每个值,然后将它们包含在计算中。