2013-10-20 22 views
2

請幫忙,我被卡住了。我有一個存儲過程來獲取和填充網格。我嘗試在Command參數中傳遞數字值,並根據我的標題得到未處理的異常。我試圖看看DBML,並沒有看到任何東西。這裏是我的代碼:CommanArgument傳遞數字未處理的EXCEL System.FormatException:輸入字符串的格式不正確

</asp:TemplateField> 
     <asp:BoundField DataField="name" HeaderText="Player" /> 
     <asp:BoundField DataField="dsc" HeaderText="Desc." /> 
     <asp:BoundField DataField="cond" HeaderText="Cond." /> 
     <asp:BoundField DataField="maker" HeaderText="Make" /> 
     <asp:BoundField DataField="year" HeaderText="Year" /> 
     <asp:BoundField DataField="price" HeaderText="Price" DataFormatString="{0:C}"/>  
     <asp:BoundField DataField="qty" HeaderText="Qty." /> 
     <asp:TemplateField HeaderText="Buy"> 
      <ItemTemplate> 
       <asp:Button ID="Button2" runat="server" Text="Buy" ToolTip="Add to Cart" OnClientClick="GridView1_SelectedIndexChanged" CommandArgument='<% #Eval("name") + "," + Eval("price") + "," + Eval("pic") %>'></asp:Button> 
      </ItemTemplate> 
     </asp:TemplateField> 

後面的代碼:

Dim btn As Button = CType(sender, Button) 
Dim commandName As String = btn.CommandName 
Dim commandArg As String() = btn.CommandArgument.ToString.Split(",") 
Dim argName As String = commandArg(0) 
Dim argDsc As String = commandArg(1) 
Dim argPrice As String = commandArg(2) 
Dim argPic As String = commandArg(3) 

在此先感謝

+0

單擊Button2時是否發生錯誤?你確定問題不在DataField =「price」數據綁定中嗎(你是否嘗試刪除'DataFormatString'屬性)? – rsbarro

回答

0

鑑於Price是某種類型的貨幣數字格式,你需要將其轉換爲字符串時連接你的按鈕CommandArgument

<asp:Button ... CommandArgument='<% #Eval("name") + "," 
+ Eval("price").ToString() + "," 
+ Eval("pic") %>'> 
相關問題