我想允许用户浏览一组表,首先在一个表中创建一行,然后创建一个以前一行作为键插入的行。
由于后续GridView在输入之前的行之前没有数据,因此不会呈现表格的HTML。
我想添加一个占位符行,以确保GridViews始终只显示一个示例行,表示“尚未添加数据”。
这可能吗?也许是以编程方式添加虚拟行而不是控件的特征?
感谢。
答案 0 :(得分:2)
使用GridView的EmptyDataTemplate属性:
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="true"
runat="server">
<emptydatarowstyle backcolor="LightBlue"
forecolor="Red"/>
<emptydatatemplate>
<asp:image id="NoDataImage"
imageurl="~/images/Image.jpg"
alternatetext="No Image"
runat="server"/>
No Data Found.
</emptydatatemplate>
</asp:gridview>
答案 1 :(得分:0)
在类似情况下,一个虚拟行为我工作。
DataRow dr = mDataTable.NewRow();
dr["KEY"] = "DUMMY";
mDataTable.Rows.Add(dr);
DataView pView = new DataView(mDataTable);
gridView.DataSource = pView;
gridView.DataBind();
gridView.Rows[0].CssClass = "Hidden"; //I am not sure about this actually, see the result
如果其他解决方案不起作用,您可以尝试将此作为替代方案。