为什么在绑定网格视图后,按钮字段变为空字段?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么在绑定网格视图后,按钮字段变为空字段?相关的知识,希望对你有一定的参考价值。
enter image description here我在gridview中有一个按钮可以打印每一行。但是使用ajax绑定后,按钮将变为空。
<asp:BoundField DataField="VisM_No" HeaderText="Visit No." />
<asp:BoundField DataField="VisM_Date" HeaderText="Visit Date" />
<asp:BoundField DataField="Pat_name" HeaderText="Patient Name" />
<asp:TemplateField Visible="true" ItemStyle-CssClass="btnPdf">
<ItemTemplate>
<asp:Button ID="btnPrint" Text="Print PDF" runat="server" CssClass="btn btn-info" CommandName="PrintPDF"/>
</ItemTemplate>
</asp:TemplateField>
答案
我怀疑问题在于数据绑定到网格的方式。
这里是一个工作示例,演示了启用AJAX的GridView:
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" CssClass="table table-bordered table-hover">
<Columns>
<asp:BoundField DataField="VisM_No" HeaderText="Visit No." />
<asp:BoundField DataField="VisM_Date" HeaderText="Visit Date" />
<asp:BoundField DataField="Pat_name" HeaderText="Patient Name" />
<asp:TemplateField Visible="true" ItemStyle-CssClass="btnPdf">
<ItemTemplate>
<asp:Button ID="btnPrint" Text="Print PDF" runat="server" CssClass="btn btn-info" CommandName="PrintPDF" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.DataSource = Enumerable.Range(1, 3).Select(x => new {
VisM_No = x,
VisM_Date = DateTime.Now,
Pat_name = "Name " + x
});
GridView1.DataBind();
}
}
结果:
以上是关于为什么在绑定网格视图后,按钮字段变为空字段?的主要内容,如果未能解决你的问题,请参考以下文章