我有一个 gridview,它有一个复选框列和一个图像列
现在,如果复选框被选中,图像列应该显示一个绿色的勾号图像,如果复选框没有被选中,它应该在连续的行中显示一个错误的图像图标。
.aspx 页面有
<asp:TemplateField HeaderText="Backup Session Status"
SortExpression="backupsessionstatus">
<EditItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server"
Checked='<%# Bind("backupsessionstatus") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server"
Checked='<%# Bind("backupsessionstatus") %>' Enabled="false" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Backup Session Status">
<EditItemTemplate>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Image ID="Image1" runat="server"/>
</ItemTemplate>
</asp:TemplateField>
.cs 文件是:
foreach (GridViewRow myRow in GridView1.Rows)
{
Image img1 = (Image)myRow.FindControl("Image1");
CheckBox chkbox1 = (CheckBox)myRow.FindControl("CheckBox1");
if (chkbox1.Checked)
{
img1.ImageUrl = "greenimage.jpg";
}
else
{
img1.ImageUrl = "redimage.jpg";
}
}
它不是在列中不显示任何图像
请推荐一个方法... 谢谢
最佳答案
感谢您的投入,但我得到了答案..就是这样
<asp:TemplateField HeaderText="Backup Session Status"
SortExpression="backupsessionstatus">
<EditItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server"
Checked='<%# Bind("backupsessionstatus") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server"
Checked='<%# Bind("backupsessionstatus") %>' Enabled="false" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Backup Session Status">
<EditItemTemplate>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Image ID="Image1" runat="server" ImageUrl="~/NewFolder1/1258341827_tick.png"/>
</ItemTemplate>
</asp:TemplateField>
这是.CS代码
foreach (GridViewRow myRow in GridView1.Rows)
{
Image img1 = (Image)myRow.FindControl("Image1");
CheckBox chkbox1 = (CheckBox)myRow.FindControl("CheckBox1");
if (chkbox1.Checked)
{
img1.ImageUrl = "~/greenimage.jpg";
}
else
{
img1.ImageUrl = "~/redimage.jpg";
}
}
我了解到,你必须在aspx页面中给出一个imageurl,然后在后面的代码中将其修改为任意图像。如果您不在 aspx 页面中提供图片 url,它将无法工作...
关于c# - 根据其他列中的值在 gridview 列中显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1739292/