Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>The use of the <code>GridView_DataBound</code> event handler solves the problem.</p> <p>In your case you will need to add a <code>HiddenField</code> to store the <code>PK_DepartmentId</code> value:</p> <pre><code>&lt;asp:GridView ID="gvExample" runat="server" AutoGenerateColumns="False" OnDataBound="gvExample_DataBound"&gt; &lt;Columns&gt; &lt;asp:TemplateField HeaderText="Department"&gt; &lt;EditItemTemplate&gt; &lt;asp:DropDownList ID="ddlDepartment_Edit" runat="server" DataSourceID="dsDepartment_Edit" DataTextField="DepartmentName" DataValueField="PK_DepartmentId"&gt; &lt;/asp:DropDownList&gt; &lt;asp:HiddenField ID="hfDepartmentId" runat="server" Value='&lt;%# Bind("PK_DepartmentId") %&gt;' /&gt; &lt;asp:SqlDataSource ID="dsDepartment_Edit" runat="server" ConnectionString="&lt;%$ ConnectionStrings:BlackHillsConnect %&gt;" ProviderName="System.Data.SqlClient" SelectCommand="sp_GetDepartmentDropDown" SelectCommandType="StoredProcedure"&gt; &lt;/asp:SqlDataSource&gt; &lt;/EditItemTemplate&gt; &lt;ItemTemplate&gt; &lt;asp:Label ID="lblDepartmentName" runat="server" Text='&lt;%# Eval("DepartmentName") %&gt;'&gt; &lt;/asp:Label&gt; &lt;/ItemTemplate&gt; &lt;/asp:TemplateField&gt; &lt;asp:CommandField ShowEditButton="True" ButtonType="Button" /&gt; &lt;/Columns&gt; &lt;/asp:GridView&gt; protected void gvExample_DataBound(object sender, EventArgs e) { foreach (GridViewRow gvRow in gvExample.Rows) { DropDownList ddlDepartment = gvRow.FindControl("ddlDepartment_Edit") as DropDownList; HiddenField hfDepartmentId = gvRow.FindControl("hfDepartmentId") as HiddenField; if (ddlDepartment != null &amp;&amp; hfDepartmentId != null) { ddlDepartment.SelectedValue = hfDepartmentId.Value; } } } </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload