我想按照前面的方法做this。我發現的唯一區別是上面代碼中包含的附加列表項。如何在GridView的EditTemplate中設置DropDownList的SelectedValue
我試圖使用AppendDataBoundItems=true
,但它仍然無法正常工作。我還希望將其默認值設置爲在itemtemplate的標籤中顯示的值,即DropDownList的SelectedValue='<%# Eval("DepartmentName") %>'
,但是在下拉列表中,我的屬性不可用。 可能是什麼原因。 ??
<EditItemTemplate>
<asp:DropDownList ID="ddlDepartment_Edit" runat="server"
DataSourceID="dsDepartment_Edit" DataTextField="DepartmentName"
DataValueField="PK_DepartmentId">
</asp:DropDownList>
<asp:SqlDataSource ID="dsDepartment_Edit" runat="server"
ConnectionString="<%$ ConnectionStrings:BlackHillsConnect %>"
ProviderName="System.Data.SqlClient" SelectCommand="sp_GetDepartmentDropDown"
SelectCommandType="StoredProcedure">
</asp:SqlDataSource>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblDepartmentName" runat="server" Text='<%# Eval("DepartmentName") %>' >
</asp:Label>
</ItemTemplate>
我使用GridView
這是我陷入困境的地方。沒有這樣的屬性對我來說是可見的,即SelectedValue或SelectedText,以便我可以爲它們分配一些值。關於DataValueField,是的,你是對的,它應該是主鍵。但直到這兩個屬性可用於我之前,不是討論的一部分。 – 2010-08-13 10:28:48
VS設計師可能不會以智能的方式顯示您的財產,但它的存在。有兩個屬性 - SelectedValue和SelectedIndex。如果您編寫SelectedIndex ='<%#Eval('DepartmentId')%>'會發生什麼? – VinayC 2010-08-13 11:29:11
我的錯誤 - 應該是SelectedValue ='<%#Eval('DepartmentId')%>'。 – VinayC 2010-08-13 11:37:43