Hi Telerik,
I'm having trouble with Eval () function in the RadGrid. The function works properly when used like this:
The reason I am doing all this is because I want to know if the unit displayed has a image for it, if not, then I display error image (using javascript). In order for me to read the directory i have to know the stock number, and that is why I am using Eval Expression in this fashion:
It gives me "System.InvalidOperationException: Databinding methods such as Eval(), XPath(), and Bind() can only be used in the context of a databound control." error.
What should I do in order to use the Eval statement?
The code for entire ItemTemplate is here:
I'm having trouble with Eval () function in the RadGrid. The function works properly when used like this:
<a href="productdetails.aspx?sid=<%#Eval("Stock Number") %>"> |
The reason I am doing all this is because I want to know if the unit displayed has a image for it, if not, then I display error image (using javascript). In order for me to read the directory i have to know the stock number, and that is why I am using Eval Expression in this fashion:
<img id="imgItem1" alt="" src="<% |
Dim pathUrlFirst as String = "" |
Dim stockNumber as String = Eval("Stock Number") |
Dim ImagePath As String = AppConfig("ImagePath") |
Dim pathLocal as String = ImagePath & "pictures\001270\" & stockNumber & "\" |
Dim di As New System.IO.DirectoryInfo(pathLocal) |
Dim fi As System.IO.FileInfo() = di.GetFiles() '("*.jpg") |
Dim fitemp As System.IO.FileInfo |
Dim Count As Integer = UBound(fi) + 1 |
Dim Name As String = "" |
Dim pathURL as String = "pictures/001270/" + stockNumber |
If fitemp.Extension.ToLower = ".jpg" OrElse fitemp.Extension = ".gif" Then |
Name = fitemp.Name |
pathUrlFirst = pathURL & Name |
Response.Write(pathUrlFirst) |
End If |
%>" style="width: 120px; border: 1px solid rgb(195, 195, 195);" /> |
It gives me "System.InvalidOperationException: Databinding methods such as Eval(), XPath(), and Bind() can only be used in the context of a databound control." error.
What should I do in order to use the Eval statement?
The code for entire ItemTemplate is here:
<telerik:RadGrid ID="RadGrid1" runat="server" AllowPaging="True" AllowMultiRowSelection = "True" |
AllowSorting="True" DataSourceID="SqlDataSource1" GridLines="None" |
Width="850px" Height="100%" Skin="Telerik" PageSize="20" > |
<MasterTableView autogeneratecolumns="False" datasourceid="SqlDataSource1" |
PageSize="50"> |
<NoRecordsTemplate> |
<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="True" |
OnCheckedChanged="ToggleRowSelection" /> |
</NoRecordsTemplate> |
<Columns> |
<telerik:GridBoundColumn DataField="ID" HeaderText="ID" |
SortExpression="ID" UniqueName="ID" DataType="System.Int32" |
ReadOnly="True" Visible="False" AutoPostBackOnFilter="True"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Sys2KNum" HeaderText="Sys2KNum" |
SortExpression="Sys2KNum" UniqueName="Sys2KNum" Visible="False"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Stock Number" HeaderText="Sort by:" |
SortExpression="Stock Number" UniqueName="Stock Number"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Year" HeaderText="Year" |
SortExpression="Year" UniqueName="Year"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Make" |
HeaderText="Make" SortExpression="Make" |
UniqueName="Make"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Model" HeaderText="Model" |
SortExpression="Model" UniqueName="Model"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Veh Type" HeaderText="Veh Type" |
SortExpression="Veh Type" UniqueName="Veh Type"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Body Style" HeaderText="Body Style" |
SortExpression="Body Style" UniqueName="Body Style"> |
</telerik:GridBoundColumn> |
</Columns> |
<ItemTemplate> |
<div style="height: auto; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px;"> |
<table width="95%" border="0" cellspacing="0" cellpadding="0"> |
<tr style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<td style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<div style="font-size: medium; font-weight: bold; text-align: left;"> <%#Eval("Year") & " " & Eval("Make") & " " & Eval("Model") & " " & Eval("Unit Trim") & " " & Eval("Fuel Type") & " " & Eval("WheelbaseCode") & " " & Eval("Custom1")%></div> |
</td> |
<tr style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<td style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<table border="0" > |
<tr style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<td style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<asp:CheckBox id="CheckBox1" OnCheckedChanged="ToggleRowSelection" AutoPostBack="True" runat="server"></asp:CheckBox> |
<div runat="server" visible ="false" id="myDiv"><%#Eval("Stock Number") %></div> |
<br /> |
</td> |
<td style="border-right-width: 0px; border-bottom-width:0px; border-left-width: 0px"> |
<a href="productdetails.aspx?sid=<%#Eval("Stock Number") %>"> |
<img id="imgItem1" alt="" src="<% |
Dim pathUrlFirst as String = "" |
Dim stockNumber as String = Eval("Stock Number") |
Dim ImagePath As String = AppConfig("ImagePath") |
Dim pathLocal as String = ImagePath & "pictures\001270\" & stockNumber & "\" |
Dim di As New System.IO.DirectoryInfo(pathLocal) |
Dim fi As System.IO.FileInfo() = di.GetFiles() '("*.jpg") |
Dim fitemp As System.IO.FileInfo |
Dim Count As Integer = UBound(fi) + 1 |
Dim Name As String = "" |
Dim pathURL as String = "pictures/001270/" + stockNumber |
If fitemp.Extension.ToLower = ".jpg" OrElse fitemp.Extension = ".gif" Then |
Name = fitemp.Name |
pathUrlFirst = pathURL & Name |
Response.Write(pathUrlFirst) |
End If |
%>" style="width: 120px; border: 1px solid rgb(195, 195, 195);" /> |
</a> |
</td> |
<td style=" text-align: left; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<table style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<!-- |
<tr style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<td colspan="4" style="border-right-width: 0px; border-bottom-width:0px; border-left-width: 0px" > |
<span id="lblDescription" > |
<%#IIf(Eval("Sales Description") <> "", Eval("Sales Description").ToString().Substring(0, Math.Min(150, Eval("Sales Description").Length)) & "... <a href=""productdetails.aspx?sid=" & Eval("Stock Number") & """>[View More]</a>", "")%> |
</span> |
</td> |
</tr> --> |
<tr style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px" > |
<td width="125px" style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
Engine:<br /> |
Transmission:<br /> |
Wheel Drive:<br /> |
Stock #:<br /> |
</td> |
<td width="100px" style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<%'#Eval("Engine Model")%><br /> |
<%'#Eval("Transmission")%><br /> |
<%'#Eval("Wheel Base")%><br /> |
<%#eval("Stock Number") %><br /> |
</td> |
<td width="80px" style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
Color:<br /> |
Package:<br /> |
VIN:<br /> |
Mileage:<br /> |
</td> |
<td width="100px" style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<%#Eval("Ext2 Color")%><br /> |
<%#Eval("Unit Trim")%><br /> |
<%#Eval("Primary Serial Number")%><br /> |
<%#IIf((Eval("Custom2") <> "" Or Eval("Odometer") = "0"), "Please Call", Eval("Odometer"))%><br /> |
</td> |
</tr> |
</table> |
<table> |
<tr> |
<td><%#IIf(Eval("Certified") = 1, "<img src=""images/warranty.jpg""> ", "")%></td> |
</tr> |
</table> |
</td> |
<td width="250px" style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<table style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<tr> |
<td width="140px" style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<div align="center"> |
<div style="font-size: large; font-weight: bold; vertical-align: top"> |
<%#IIf(Eval("OurPrice") & 0 <> 0, FormatCurrency(Eval("OurPrice"), 2), "In Service")%> |
<br /><br /><br /> |
</div> |
<a href="productdetails.aspx?sid=<%#Eval("Stock Number") %>"><img src="images/button/viewdetails.gif" alt="" border="0" style="margin-bottom: 5px" /></a><br /> |
</div> |
</td> |
<td width="110px" style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<div align="center"> |
<br /><br /> |
<div id="carfax" runat="server" visible="True"> |
<img src="images/carfax_1owner.png" alt="" border="" /> |
</div> |
<br /> |
</div> |
</td> |
</tr> |
<tr> |
<td colspan="2" style="border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px"> |
<div align="center"> |
<div id="uwm_<%#Eval("Primary Serial Number")%>" style="width:150px; height:54px; cursor:hand"></div> |
</div> |
</td> |
</tr> |
</table> |
</td> |
</tr> |
</table> |
</td> |
</tr> |
</table> |
</div> |
</ItemTemplate> |
<EditFormSettings> |
<FormTemplate> |
<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="True" |
OnCheckedChanged="ToggleRowSelection" /> |
</FormTemplate> |
</EditFormSettings> |
<PagerStyle Mode="NextPrevNumericAndAdvanced" Position="TopAndBottom" /> |
</MasterTableView> |
<ActiveItemStyle BorderStyle="None" /> |
</telerik:RadGrid> |
<asp:SqlDataSource ID="SqlDataSource1" runat="server" |
ConnectionString="<%$ ConnectionStrings:TestString %>" |
SelectCommand="SELECT * FROM Vehicles WHERE Sys2KNum = '001270'" > |
</asp:SqlDataSource> |