комбобокс в датагрид - PullRequest
       24

комбобокс в датагрид

1 голос
/ 28 января 2012

У меня есть asp: gridview, я пытаюсь заменить выпадающий список asp: на выпадающий список obout:.Я использую комбинированный список на странице за пределами сетки, и она работает, как ожидалось.В виде сетки код выглядит так:

 <asp:GridView ID="dgKSA" runat="server" AutoGenerateColumns="False" GridLines="none"
    Width="980px" Style="border: 1px solid #404040" CellPadding="5" AlternatingRowStyle-BackColor="#F0F3F4"
    ShowHeader="false">
    <Columns>
        <asp:TemplateField ItemStyle-VerticalAlign="top">
            <ItemTemplate>
                <obout:ComboBox ID="ddlImportanceInDg" runat="server" Visible="true" Enabled="true" >
                    <obout:ComboBoxItem ID="ComboBoxItem1" runat="server" Value="5" Text="Extremely Important" />
                    <obout:ComboBoxItem ID="ComboBoxItem2" runat="server" Value="4" Text="Important" />
                    <obout:ComboBoxItem ID="ComboBoxItem3" runat="server" Value="3" Text="Moderately Important" />
                    <obout:ComboBoxItem ID="ComboBoxItem4" runat="server" Value="2" Text="Unimportant" />
                    <obout:ComboBoxItem ID="ComboBoxItem5" runat="server" Value="1" Text="Extremely Unimportant" />
                    <obout:ComboBoxItem ID="ComboBoxItem6" runat="server" Value="99" Text="Not Applicable"
                        Selected="true" />
                </obout:ComboBox>
                <%--<asp:DropDownList runat="server" ID="ddlImportanceInDg">
                    <asp:ListItem Value="5">Extremely Important</asp:ListItem>
                    <asp:ListItem Value="4">Important</asp:ListItem>
                    <asp:ListItem Value="3">Moderately Important</asp:ListItem>
                    <asp:ListItem Value="2">Unimportant</asp:ListItem>
                    <asp:ListItem Value="1">Extremely Unimportant</asp:ListItem>
                    <asp:ListItem Value="99" Selected="true">Not Applicable</asp:ListItem>
                </asp:DropDownList>--%>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

вот и все ... когда страница прорисовывается, появляется поле со списком, но в нем есть только последний комбокс.

надеялся, что у кого-то есть идея.Спасибо Шеннон

1 Ответ

1 голос
/ 28 августа 2012

Я понимаю, что вы спрашивали об этом 7 месяцев назад, но у меня была та же проблема, и я нашел решение, поэтому я решил поделиться ею.

По сути, вам нужно назначить ComboBox уникальный идентификатор при создании строки.

Sub GridView1_RowCreated(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
        If e.Row.RowType = DataControlRowType.DataRow Then
            Dim ComboBox1 As Obout.ComboBox.ComboBox = CType(e.Row.FindControl("ComboBox1"), Obout.ComboBox.ComboBox)

            ComboBox1.ID = "ComboBox1_" & e.Row.RowIndex
        End If
End Sub
...