2012-05-09 14 views
0

基本上value1和value2是數據庫中的兩個數字,當我點擊button1時我想在後面的代碼中獲取數字(c#),所以我可以給它添加另一個數字,並且對於value2也是一樣的。我只需要在C#中提取Eval值所需的行....您的幫助將非常感激。如何通過單擊按鈕從代碼中的列表視圖中獲取eval值?

<asp:Button ID="button1" runat="server" Text='Plus' OnClick="button1_Click"/> 
<asp:Label ID="value1" runat="server" Text=' <%# Eval("value1") %> ' /> 
<asp:Button ID="button2" runat="server" Text='Minus' OnClick="button2_Click" /> 
<asp:Label ID="value" runat="server" Text=' <%# Eval("value2") %> '/> 

回答

0

需要先 '綁定'

< ASP:標籤ID = 「VALUE1」 RUNAT = 「服務器」 文本= '<%#綁定( 「VALUE1」)%>'/>

Eval是一種方式,綁定是雙向數據綁定。您可能需要使用Container.DataItem,但綁定可能會完成這項工作。

然後,您就可以閱讀文本屬性的值,即

var theText = value1.Text; 

此外,因爲控制是在ListView,你可能需要瀏覽的ListView控件集合:

theListView.FindControl("theIdOfTheControl") 

HTH

+0

應該保留文本不管你是否使用'的eval()'或'綁定()'。當你需要雙向數據綁定時,「綁定()」很重要。 –

1

您不能使用​​,除非您在ItemDataBound事件中,但您可以將該值存儲在datakey colle ction和訪問它的方式:

<asp:ListView ID="ListView1" runat="server" DataKeyNames="Value1, Value2, Value3" ...> 

並在代碼隱藏,你只需要行索引:

var rowIndex = 0; 
var value = lst.DataKeys[rowIndex]["Value1"].ToString(); 
相關問題