我想从数据库中检索配方名称,需要在列表表单中显示数据。我已经添加了代码。但是我在模板中包含了什么。
来源
<asp:ListView ID="ListView1" runat="server">
<ItemTemplate>
</ItemTemplate>
</asp:ListView>
背后的代码
protected void Page_Load(object sender, EventArgs e)
{
MySqlConnection con = new MySqlConnection("Server=localhost;Database=FreedomKitchen;Uid=root;Password=;");
con.Open();
MySqlCommand cmd = new MySqlCommand("select Recipe_Name from Recipes", con);
MySqlDataAdapter da = new MySqlDataAdapter();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
da.Fill(ds, "Recipe_Names");
ListView1.DataSource = ds;
ListView1.DataBind();
}
答案 0 :(得分:0)
如果您只想显示数据,可以添加标签 &#39;&GT;
或文本框,如果您想编辑数据
答案 1 :(得分:0)
答案 2 :(得分:0)
您可以在<ItemTemplate>
中输入要在特定列表视图项中显示的内容。
此外,我认为您可以更轻松地将DataSet
映射到 Recipe 类型的相应集合中。
例如,在设计师中:
<ItemTemplate>
<asp:Label runat="server" ID="lbl"></asp:Label>
</ItemTemplate>
代码背后:
void Page_Load(object sender, EventArgs e)
{
...Code...
ListView1.ItemDataBound += new EventHandler<System.Web.UI.WebControls.ListViewItemEventArgs>(ListView1_ItemDataBound);
}
private void ListView1_ItemDataBound(object sender, System.Web.UI.WebControls.ListViewItemEventArgs e)
{
if (e.Item.ItemType == ListViewItemType.DataItem)
{
var recipeName = e.Item.DataItem as *Your_Recipe_Class_Type*;
if (recipeName != null)
{
Label lbl = e.Item.FindControl("lbl");
lbl.Text = recipeName.*DesiredProperty*;
}
}
}