Need help with DataBinder.Eval(Container.DataItem, "myColumn") statement

I'm using <asp:accessdatasource> and displaying the results in a <asp:datalist>. In order to eliminate the decimal digits in the formatted currency output I have inserted this code in the datalist <itemtemplate>.

The problem is I get an error saying that "Container" is not declared. How can I reference this dataitem in this context?

Thank you!
Tim

<%  Dim nfi As New System.Globalization.NumberFormatInfo()
    nfi.CurrencyDecimalDigits = 0
    nfi.CurrencySymbol = "$"
    Response.Write("<div style='height:18px;'>On Sale&nbsp;" & String.Format(nfi, "{0:c}", DataBinder.Eval(Container.DataItem, "Web Price")) & "</a></div>")
%>
bigmoxyAsked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
Dustin HopkinsConnect With a Mentor Managing MemberCommented:
Why dont you try it like this,
This moves your formatting to the code behind.


'Front end, goes in your datalist...
<asp:Label ID="WebPriceLabel" runat="server" Text='<%# losedecimal(databinder.eval(container.dataitem,"Web Price")) %>' />
 
'Then do your formatting in the code behind
Public Function LoseDecimal(ByVal dec As Decimal) As String
        Dim nfi As New System.Globalization.NumberFormatInfo()
        nfi.CurrencyDecimalDigits = 0
        nfi.CurrencySymbol = "$"
        Return ("<div style='height:18px;'>On Sale&nbsp;" & String.Format(nfi, "{0:c}", dec) & "</a></div>")
    End Function

Open in new window

0
 
bigmoxyAuthor Commented:
Cool! Very slick and efficient!
Thank you!!
Tim
0
All Courses

From novice to tech pro — start learning today.