代码之家  ›  专栏  ›  技术社区  ›  sikender

是否要使用DataGrid中的图像显示活动和非活动用户?

  •  1
  • sikender  · 技术社区  · 15 年前

    我有一个国家表数据库。SQL 2005,

    country_id  country_name   region       area    population   gdp        status
       84        indi         asia      3432     3423           343         Active
       85        U.k          Europe   43432     3243          2343         Inactive
    

    我想使用活动和非活动的图像,而不是我的数据报中的文本。不在数据库中..在数据库中只有文本..

    所以……我正在使用.NET 2005..我想用状态绑定图像。每当我把活跃变为不活跃或不活跃变为活跃……图像将被更改。根据这个……

    我使用C作为语言背后的代码。

    2 回复  |  直到 15 年前
        1
  •  1
  •   Canavar    15 年前

    最简单的方法是添加这样的图像列:

    <asp:ImageField 
        DataImageUrlField="status" 
        DataImageUrlFormatString="~/images/{0}.jpg">
    </asp:ImageField>
    

    您的图像文件夹中应该有两个图像,如active.jpg和in active.jpg。

    顺便说一下,如果您的状态列中有空值,请不要忘记设置 零极值 他们的财产。

    编辑: 实际上,我看到你在寻找DataGrid,我错过了,下面是模板列的DataGrid方法:

    <asp:TemplateColumn>
        <img src='<%# DataBinder.Eval(Container.DataItem, "status", "~/images/{0}.jpg") %>' />
    </asp:TemplateColumn>
    

    这一个带有asp:image服务器控件:

    <asp:TemplateColumn>
        <asp:Image runat="server" ID="imgStatus" 
            ImageUrl='<%# DataBinder.Eval(Container.DataItem, "status", "~/images/{0}.jpg") %>' />
    </asp:TemplateColumn>
    
        2
  •  1
  •   DOK    15 年前

    在ASP.NET 2.0中为GridView引入了ImageField。 Here's a good article explaining it (with screenshots).

    要在ASP.NET 1.x中的DataGrid列中显示图像,必须使用TemplateColumn和TemplateColumn中的Image Web控件。