2012-09-04 212 views
-1

我有2個dropdowmlists其中的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。如果我選擇year as 3month as 9want to save it as 3.9和那樣。

請幫我解決這個問題。

好的建議是可觀的。

+0

'Label4'和'Label5'顯示''ddl'選擇value'是嗎? –

回答

1

你有兩個辦法做到這一點

使用 dropdownlist SelectedItem歡迎使用屬性

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

(2)另一種使用方式

(1)的一種方法dropdownlistSelectedValue propety

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

如果谷歌,那麼你一定會發現。

我希望這對你有所幫助。

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); 
+0

好的,謝謝@Vishal Suthar 我會嘗試一下並回復你是否工作。 – Ramdas

0

你應該做以下。
如果您沒有設置"datavaluefield""datatextfield"代碼端,則設置這兩個參數。
在Datavaluefiled中您應該放置需要保存的參數(例如1,2,3),並且datatextfield應該是需要向用戶顯示的值(例如1月,2月,...)

在節省時做以下事情。

檢查兩者都沒有設置爲索引-1
應該有任何非負整數值。

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

希望這會有所幫助。

0

我不明白爲什麼這成爲一個問題給你!

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

這應該解決您的問題

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; 
}