오류가 입니다. ddlgvRooms '에 항목 목록에 존재하지 않아 유효하지 않은 SelectedValue가 있습니다. 매개 변수 이름 : 값Gridview EditTemplate DropDownlist
내가이 특정 문제 만 해결의 비와 문제가 많은 사람들이 같은 appenddatabounditems이 = "true"로 설정하는 등 몇 가지 다른 일을 시도 내 케이스에요 일한 읽어도 시도 itemcollection에 기본 null 값을 설정합니다. 내가 읽은 포럼의 대부분은 2 년 전부터 이미이 버그를 수정하고 뭔가를 간과하고 있기를 바랬다.
계단식 드롭 다운 목록을 gridview edittemplate 필드에서 사용하려고합니다. 내 detailsview에서 삽입 된 모든 것들을 위대한 작품을 만들었습니다.
MySetup 는 기본적으로 나는 created.The의 데이터 세트가 SQLSTOREDPROCEDURES 몇에서 자신의 데이터를 얻을 수있는 2 개 데이터 세트에서 데이터를 잡기 위해 가정되는이 기능 getRooms 및 getJacks이있는의 WebMethod 있습니다.
내 aspx 페이지의 드롭 다운리스트와 AjaxCDDL이 페이지는 아마이 채워되기 전에 목록 아래로 드롭의 선택 값을 설정하려고하는이
<EditItemTemplate>
<asp:DropDownList ID="ddlgvRooms" runat="server"
SelectedValue='<%# Bind("intRoom") %>'>
</asp:DropDownList> <asp:CascadingDropDownID="ddlgvRooms_CascadingDropDown"
runat="server"
Enabled="True"
TargetControlID="ddlgvRooms"
Category="Jack"
ServiceMethod = "GetRooms"
ServicePath = "CascadingDropDownRooms.asmx"
LoadingText = "[Loading Rooms...]"
PromptText="Please Select Room">
</asp:CascadingDropDown>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblgvRoom" runat="server" Text='<%# Eval("intRoom") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="JackNumber" SortExpression="intJack">
<EditItemTemplate>
<asp:DropDownList ID="ddlgvJacks" runat="server"
Height="20px" Width="125px">
</asp:DropDownList>
<asp:CascadingDropDown ID="ddlgvJack_CascadingDropDown"
runat="server"
Enabled="True"
Category="Jack"
ServiceMethod="GetJacks"
ServicePath="CascadingDropDownRooms.asmx"
TargetControlID="ddlgvJacks"
ParentControlID="ddlgvRooms"
LoadingText="[Loading Jacks...]"
PromptValue="Please Select A Jack">
</asp:CascadingDropDown>
</EditItemTemplate>
<WebMethod()> _
Public Function GetRooms(ByVal knownCategoryValues As String, ByVal category As String) As CascadingDropDownNameValue()
Dim roomAdapter As New dsRoomsTableAdapters.roomlistTableAdapter()
Dim roomValues As New List(Of CascadingDropDownNameValue)()
For Each row As DataRow In roomAdapter.GetAllRooms()
roomValues.Add(New CascadingDropDownNameValue(row("RoomName").ToString(), row("intRoom").ToString()))
Next
Return roomValues.ToArray()
End Function
<WebMethod()> _
Public Function GetJacks(ByVal knownCategoryValues As String, ByVal category As String) As CascadingDropDownNameValue()
Dim kv As StringDictionary = CascadingDropDown.ParseKnownCategoryValuesString(knownCategoryValues)
Dim jackid As Integer
If ((Not kv.ContainsKey("Jack")) Or (Not Int32.TryParse(kv("Jack"), jackid))) Then
Return Nothing
End If
Dim jackAdapter As New dsRoomJacksTableAdapters.jacklistTableAdapter()
Dim jackValues As New List(Of CascadingDropDownNameValue)()
For Each row As DataRow In jackAdapter.GetJacksByRoomId(jackid)
jackValues.Add(New CascadingDropDownNameValue(row("JackNumber").ToString(), row("intJack").ToString()))
Next
Return jackValues.ToArray()
End Function
는 I 추가하려고 FirstRoom asp : ListItem> –
Tim