我想要一些关于我创建 ASP.NET Web 应用程序的方法的指导。
该应用程序(在 .aspx.cs 文件中)旨在查找目录中的一组文本文件。对于每个文本文件,我想使用文本文件中的信息在我的 .aspx 文件中创建/修改一个表。
到目前为止,我已经创建了带有 ID 属性的 asp:Table 控件。然后,我使用 TableRow 和 TableCell 方法在我的 .aspx.cs 文件中构建一个表,并使用 ID 属性将它们添加到表中。
这一切都进行得很顺利,而且都是硬编码的。我已经开始取消选择它并创建一个 for 循环来遍历目录以查找文本文件。然后它获取文本文件名称,我想用它来修改具有相同名称的 asp:table 控件。但是我不能对文本文件名称调用相同的表方法,因为它是一个字符串。
最后我的问题是,这是正确的方法吗?我是否在我的 .aspx 表文件中对 asp:table 控件进行硬编码,我会知道(文本文件名称)的名称,然后尝试使用 C# 后台代码更新它们?如果是这样,是否只是使用文本文件名称在 C# 中创建一个表实例并将其绑定(bind)到 asp:table 控件?
抱歉,如果这很复杂 - 今天第一次使用 asp.net。
最佳答案
您应该能够从处理文件的循环中的隐藏代码创建表格控件。您可以在标记中包含一个占位符控件,并将表格控件添加到占位符的控件集合中。
在 .aspx 中:
<asp:PlaceHolder runat="server" ID="tablePlaceHolder"></asp:PlaceHolder>
在 .aspx.cs 中:
foreach (var file in files) {
var id = GetIdFromFileName(file); // derive ID from file
var tblControl = new Table {ID = id};
tablePlaceHolder.Controls.Add(tblControl);
// create rows and cells for the table control as appropriate
// based on the content of the file
}
关于c# - 使用 C# 代码隐藏将表动态添加到 ASP.NET Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33655290/