我使用此代码创建一个动态菜单:
private void PopulateMenu()
{
DataSet ds = GetDataSetForMenu();
Menu menu = new Menu();
//menu.MenuItemClick += new MenuEventHandler(menu_MenuItemClick);
foreach (DataRow masterRow in ds.Tables[0].Rows)
{
MenuItem masterItem = new MenuItem(" " + (string)masterRow["pkg_name"] + " ");
menu.Items.Add(masterItem);
foreach (DataRow childRow in masterRow.GetChildRows("Children"))
{
MenuItem childItem = new MenuItem((string)childRow["city"] + "<hr />");
masterItem.ChildItems.Add(childItem);
childItem.NavigateUrl = ((string)childRow["url"]) + "?id=" + ((int)childRow["city_id"]);
}
}
//foreach (DataRow parentItem in ds.Tables["City"].Rows)
//{
// MenuItem categoryItem = new MenuItem((string)parentItem["city"]);
// menu.Items.Add(categoryItem);
// foreach (DataRow childItem in parentItem.GetChildRows("Children"))
// {
// MenuItem childrenItem = new MenuItem((string)childItem["Hotel_name"]);
// categoryItem.ChildItems.Add(childrenItem);
// }
//}
Panel1.Controls.Add(menu);
Panel1.DataBind();
}
private DataSet GetDataSetForMenu()
{
SqlConnection myConnection = new SqlConnection(GetConnectionString());
SqlDataAdapter adCat = new SqlDataAdapter("SELECT * FROM Package", myConnection);
SqlDataAdapter adProd = new SqlDataAdapter("SELECT * FROM City", myConnection);
DataSet ds = new DataSet();
adCat.Fill(ds, "Package");
adProd.Fill(ds, "City");
ds.Relations.Add("Children", ds.Tables["Package"].Columns["pkg_id"], ds.Tables["City"].Columns["pkg_id"], false);
return ds;
}
private string GetConnectionString()
{
string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
return connectionString;
}
菜单面板中创建。我有一个锚标记酒店预订。我希望面板是可见的onmouseover酒店预订。我怎么能这样做吗?
请指导我。
预先感谢