0
나는 하나의 열 (질의 --- 데이터베이스를 얻음)과 다른 가능한 드롭 다운리스트 (옵션) 만 표시하고자하는 템플릿 화 된 Gridview를 가지고있다. 드롭 다운 목록의 값은 질문의 유형에 따라 다릅니다. T/F 또는 원거리 (Lo, Med, High)의 두 가지 유형 만 있습니다. 질문이 유형 1 인 경우 드롭 다운 목록에 T/F 만 표시됩니다. 유형 II 인 경우도 마찬가지입니다. 내가 사용하여 LoadDropdownList는(), 그것은 목록을 채우는 것이라고 기대했다Webform Gridview에서 드롭 다운 목록을 어떻게 동적으로로드합니까?
<asp:GridView AutoGenerateColumns="false" runat="server" ID="SurveyView">
<Columns>
<asp:BoundField HeaderText="Questionnaire" DataField="Questionaire" ReadOnly="true"/>
<asp:BoundField HeaderText="QuestionID" DataField="Id" ReadOnly="true" Visible="false" />
<asp:BoundField HeaderText="IsBoolean" DataField="Filter" ReadOnly="true" Visible="false" />
<asp:TemplateField HeaderText="Response">
<ItemTemplate>
<asp:DropDownList ID="UserDropDown" runat="server" AppendDataBoundItems="true" DataSource="LoadDropdownList(Filter)" DataTextField="key" DataValueField="value"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
public Dictionary<String, String> GenerateDropdownList(bool BooleanFilterStatus)
{
Dictionary<String, String> tempStores = new Dictionary<string, string>() ;
if (BooleanFilterStatus)
{
tempStores.Add(Boolean.TrueString, Boolean.TrueString);
tempStores.Add(Boolean.FalseString, Boolean.FalseString);
}
else
{
tempStores.Add("NONE", "NIL");
tempStores.Add("Lo", "Low");
tempStores.Add("Medium", "Medium");
tempStores.Add("High", "High");
}
return tempStores;
}
아래 표시됨
이있는 gridview와 (아마도) 드롭 다운리스트를로드하는 방법입니다. 하지만 그건 효과가없는 것처럼 보입니다.
모든 아이디어 또는 다른 가능한 해결책을 주시면 감사하겠습니다.
쿨있다. 제안 해 주셔서 감사 드리며이를 시도해 보겠습니다. – yungun
남자에게 몇 가지 포인트를 잊지 마세요! – Fandango68
그러나 초기에 선택한 값을 그리드 행의 값으로 설정하는 방법은 무엇입니까? – drzaus