c# - 如何获取转换后的 bool 值以在 asp.net gridview 的可编辑下拉列表中显示为选定值?

标签 c# asp.net gridview

我有一个数据库标志 ActiveFlag,我在 gridview 行中显示为是/否。在编辑时,会显示一个显示选项的下拉列表,但它始终显示是,即使当前值为否。我确定问题是我必须显示所选项目的代码不起作用,但我我不确定如何修复它。

<asp:TemplateField HeaderText="Active" SortExpression="ActiveFlag"
    ItemStyle-HorizontalAlign="Center">
    <ItemTemplate>
        <%# (Boolean.Parse(Eval("ActiveFlag").ToString()))? "Yes" : "No" %>
    </ItemTemplate>
    <EditItemTemplate>
        <asp:DropDownList ID="ddlActive" runat="server" 
           Selected='<%# (Boolean.Parse(Eval("ActiveFlag").ToString()))? "Yes" : "No" %>' >
            <asp:ListItem Text="Yes" Value="1" />
            <asp:ListItem Text="No" Value="0" />
        </asp:DropDownList>
    </EditItemTemplate>
</asp:TemplateField>

最佳答案

您可以使用 DropDownList 的 SelectedValue .

注意:确保条件运算符是 ListItems 的值。在您的代码中,它们是“1”和“0”。

<asp:DropDownList ID="ddlActive" runat="server"
    SelectedValue='<%# Convert.ToBoolean(Eval("ActiveFlag"))? "1" : "0" %>'>
    <asp:ListItem Text="Yes" Value="1" />
    <asp:ListItem Text="No" Value="0" />
</asp:DropDownList>

关于c# - 如何获取转换后的 bool 值以在 asp.net gridview 的可编辑下拉列表中显示为选定值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27951552/

相关文章:

c# - 在 gridview 中获取特定的数据行?

android - 图像裁剪以适合 GridView

c# - 有时在 signalR 中断开连接不触发

c# - WP7 上的 Linq to SQL Select 性能非常慢

c# - 在 Racket 上实现 RC4

具有多选功能的 asp.net mvc 强类型 View 模型

c# - TypeInitializationException 发生在 'System.Data.Entity.dll' - 类型初始值设定项 'ExtentPlaceholderCreator'

asp.net - Sitecore 用于创建项目的默认语言

c# - 反序列化列表<struct>

jquery - Asp.net Obout grid,如何使用其内置功能在不刷新页面的情况下发布数据?