I have a aspx page where I have a gridview and inside this gridview i added a datalist, so for each row i want to have a datalist, Basically the row contains an Image and in the datalist I want to display certain details about the Picture, For example, a pic of a truck and in the datalist i want to display the price, year, etc... All this data is in a database table. Table Inventory Design:\[code\]Image,Make,Model,Price,Year, ID--primary key\[/code\]At this point I'm display the image in the gridview, but the datalist is showing all the rows that are in the table on every row of the grid What I want to to is only display the data that describes the image of the current row. For example, the first row should only display data in the datalist where ID = "15 and the second row where ID = "16" and so on.In the SelectCommand for the SQLDataSource that fills the datalist, i'm trying to pass "WHERE ID = @ID" parameter and get it from the codebehind page so i can manipulate the data and only display the data that corresponds to the image and not all the data in each row over and over.\[code\]<asp:GridView ID="GridView1" runat="server" <asp:SqlDataSource ID="SqlDataSource2" runat="server" SelectCommand="SELECT [ID], [Make], [Model], [Year], [Price] FROM [Inventory] WHERE ID = @ID" OnLoad = "SqlDataSource1_Load" OldValuesParameterFormatString="original_{0}" ConnectionString="<%$ ConnectionStrings:testConnectionString %>"></asp:SqlDataSource>\[/code\]THIS IS KIND OF WHAT I WANT, CODE BEHIND\[code\] public partial class Inventory : System.Web.UI.Page { protected System.Web.UI.WebControls.DataList DataList1; protected void Page_Load(object sender, EventArgs e) { } public void SqlDataSource1_Load(object sender, EventArgs e) { SqlDataSource1.SelectParameters.Add(new Parameter("ID", this would be where my ID should = the id of the image); } }\[/code\]