依据值的不同,在gridview 模板列显示不同的内容
根据值的不同,在gridview 模板列显示不同的内容
后台代码:
前台aspX
我想要效果是,当后台k=1时,在模板列显示“已签收”,当k=0时,在模板显示“签收”链接(也就是保持不变)
------解决方案--------------------
后台代码:
- C# code
if (Request.QueryString["Rid"] != null) { string k = "0";//控制是否签收 DataSet ds = B_FileInfo1.GetList(" and a.id='" + Request.QueryString["Rid"] + "'"); if (ds.Tables[0].Rows[0]["ReadStatue"].ToString() != "") { string[] fread = ds.Tables[0].Rows[0]["ReadStatue"].ToString().TrimEnd(',').Split(','); for (int i = 0; i < fread.Length; i++) { if (fread[i] == Session["Townid"].ToString()) { k = "1"; 模板列显示“已签收”!! } } } if (k == "0") { bool falg = B_FileInfo1.UpdateRead(Session["Townid"].ToString() + ",", Request.QueryString["Rid"].ToString()); if (falg) { DBUtility.CRCommon.Show(this, "签收成功!"); } } }
前台aspX
- HTML code
<asp:TemplateField HeaderText="签收"> <EditItemTemplate> <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox> </EditItemTemplate> <ItemTemplate> <a href='<%#"My.aspx?Rid="+Eval("id") %>'>签收</a> </ItemTemplate> </asp:TemplateField>
我想要效果是,当后台k=1时,在模板列显示“已签收”,当k=0时,在模板显示“签收”链接(也就是保持不变)
------解决方案--------------------
- HTML code
<ItemTemplate> <asp:Label ID="lab_ID" runat="server" Text='<%#GetOrganization(DataBinder.Eval(Container.DataItem, "OrganizationLevel").ToString(),DataBinder.Eval(Container.DataItem, "OrganizationID").ToString()) %>'></asp:Label> </ItemTemplate>
------解决方案--------------------
<ItemTemplate>
<a href='<%#"My.aspx?Rid="+Eval("id") %>'>签收</a>
</ItemTemplate>
这里换成LinkButton然后在gridview的行绑定事件里面
LinkButton lbtn = e.Row.FindControl("LinkButton1") as LinkButton;根据你的if条件赋值