In this article I will explain with an example, how to use EVAL function to set Selected Value of DropDownList inside GridView in ASP.Net using C# and VB.Net.
	
		 
	
		 
	
		HTML Markup
	
		The HTML Markup consists of an ASP.Net GridView containing two BoundField columns and a TemplateField column.
	
		The TemplateField columns consist of a DropDownList which has been assigned the Selected Value by setting the EVAL function to the SelectedValue property.
	
		
			<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
		
			    <Columns>
		
			        <asp:BoundField DataField="Id" HeaderText="Customer Id" ItemStyle-Width="80" />
		
			        <asp:BoundField DataField="Name" HeaderText="Name" ItemStyle-Width="120" />
		
			        <asp:TemplateField HeaderText="Country" ItemStyle-Width="120">
		
			            <ItemTemplate>
		
			                <asp:DropDownList ID = "ddlCountries" runat="server" SelectedValue='<%# Eval("Country") %>'>
		
			                    <asp:ListItem Text = "United States" Value = "United States"></asp:ListItem>
		
			                    <asp:ListItem Text = "India" Value = "India"></asp:ListItem>
		
			                    <asp:ListItem Text = "France" Value = "France"></asp:ListItem>
		
			                    <asp:ListItem Text = "Russia" Value = "Russia"></asp:ListItem>
		
			                </asp:DropDownList>
		
			            </ItemTemplate>
		
			        </asp:TemplateField>
		
			    </Columns>
		
			</asp:GridView>
	 
	
		 
	
		 
	
		Namespaces
	
		You will need to import the following namespace.
	
		C#
	
	
		 
	
		VB.Net
	
	
		 
	
		 
	
		Binding the ASP.Net GridView control
	
		The GridView is populated with a dynamic DataTable with some dummy data inside the Page Load event.
	
	
		 
	
		C#
	
		
			protected void Page_Load(object sender, EventArgs e)
		
			{
		
			    if (!this.IsPostBack)
		
			    {
		
			        DataTable dt = new DataTable();
		
			        dt.Columns.AddRange(new DataColumn[3] { new DataColumn("Id"), new DataColumn("Name"), new DataColumn("Country") });
		
			        dt.Rows.Add(1, "John Hammond", "United States");
		
			        dt.Rows.Add(2, "Mudassar Khan", "India");
		
			        dt.Rows.Add(3, "Suzanne Mathews", "France");
		
			        dt.Rows.Add(4, "Robert Schidner", "Russia");
		
			        GridView1.DataSource = dt;
		
			        GridView1.DataBind();
		
			    }
		
			}
	 
	
		 
	
		VB.Net
	
		
			Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
		
			    If Not Me.IsPostBack Then
		
			        Dim dt As New DataTable()
		
			        dt.Columns.AddRange(New DataColumn(2) {New DataColumn("Id"), New DataColumn("Name"), New DataColumn("Country")})
		
			        dt.Rows.Add(1, "John Hammond", "United States")
		
			        dt.Rows.Add(2, "Mudassar Khan", "India")
		
			        dt.Rows.Add(3, "Suzanne Mathews", "France")
		
			        dt.Rows.Add(4, "Robert Schidner", "Russia")
		
			        GridView1.DataSource = dt
		
			        GridView1.DataBind()
		
			    End If
		
			End Sub
	 
	
		 
	
		 
	
		Screenshot
	
	
		 
	
		 
	
		Demo
	
	
		 
	
		 
	
		Downloads