GimboMedlem sedan dec. 20001 626 inlägg Hej,
laddade ner AJAXCOntrolToolKit från ajax.asp.net men jag inte få kontrollen dropdown extender att fungera (http://asp.net/AJAX/AjaxControlToolkit/Samples/DropDown/DropDown.aspx):
Jag vill lägga drpdown extendern i en cell i en datagrid,,, dvs alla namn i datagriden skall ha dropdown extendern och så här har jag gjort men får det inte att fungera :@
vet egentligen inte vart någonstans jag ska lägga koden? men har nedastående kod i
void dgr_ItemDataBound(object sender, DataGridItemEventArgs e)
LinkButton lb = new LinkButton();
lb.ID = "link";
lb.Click += new EventHandler(lb_Click);
lb.Text = row["Filename"].ToString();
lb.CommandArgument = row["FilePath"].ToString();
AjaxControlToolkit.DropDownExtender drpExtender = new AjaxControlToolkit.DropDownExtender();
drpExtender.ID = "DDE";
drpExtender.TargetControlID = lb.ID;
drpExtender.DropDownControlID = drpPanel.ID;
drpExtender.Controls.Add(lb);
drpExtender.DropArrowImageUrl = "~/app_themes/blue/images/bullet_arrow_down.png";
e.Item.Cells[1].Controls.Clear();
e.Item.Cells[1].Controls.Add(drpExtender);
TravoniMedlem sedan okt. 20041 556 inlägg Men du måste väl lägga in detta
<ajaxToolkit:DropDownExtender runat="server" ID="DDE"
TargetControlID="TextLabel"
DropDownControlID="DropPanel" />
i en itemtemplate.
GimboMedlem sedan dec. 20001 626 inlägg Jag jobbar i code-behinde...
jag tror felet ligger i scriptmanagern eller för på något konstigt sätt får jag ett javascript fel på sidan som lyder:
'_behaviur' is null or not an object, dvs det känns som att scriptmanagern inte gör det den skall, eller är det jag som stirrat mig blind på scriptmanagern, och att felet kan ligga någon annanstans då man får ett javascripts fel?
ScriptManager sm;
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
sm = ScriptManager.GetCurrent(this.Page);
if (sm == null)
{
sm = new ScriptManager();
sm.EnablePartialRendering = true;
Scriptmangern ska komma först
this.Page.Form.Controls.AddAt(0, sm);
}
}
skulle vara VÄLDIGt tacksam för hjälp
ordellMedlem sedan sep. 200278 inlägg Hm, har du testat att lägga till kontrollen (lb) till cellen också?
e.Item.Cells[1].Controls.Add(lb);
innan du lägger till extendern...
GimboMedlem sedan dec. 20001 626 inlägg skit schysst tack för hjälpen!!
fick det att funka :D för er som är intresserade så ser ni koden nedan...
en sak som inte triggas är:
pnl.Attributes["style="] = "display:none; visibility:none;";
pnl.CssClass = "ContextMenuPanel";
får inte den fina bakgrunden i dropdownen med mouseovern, och den skall dyka upp m h a ovanstående kod, men det verkar som att den inte triggas, någon som har någon aning om varför?
koden för dropdown extendern:
AjaxControlToolkit.DropDownExtender hme = new AjaxControlToolkit.DropDownExtender();
Panel pnl = new Panel();
pnl.Attributes["style="] = "display:none; visibility:none;";
pnl.CssClass = "ContextMenuPanel";
e.Item.ID = "dgvRow_" + e.Item.ItemIndex.ToString();
LinkButton lb1 = new LinkButton();
pnl.ID = "pnl" + e.Item.ItemIndex.ToString();
pnl.Controls.Add(lb1);
lb1.Text = "function 1";
LinkButton lb2 = new LinkButton();
pnl.Controls.Add(lb2);
lb2.Text = "function 2";
LinkButton lb3 = new LinkButton();
pnl.Controls.Add(lb3);
lb3.Text = "function 3";
//hme.PopupControlID = pnl.ID;
hme.DropDownControlID = pnl.ID;
hme.TargetControlID = e.Item.ID;
e.Item.Cells[1].Controls.Clear();
e.Item.Cells[1].Controls.Add(lb);
e.Item.Cells[1].Controls.Add(hme);
e.Item.Cells[1].Controls.Add(pnl);
inspiroMedlem sedan sep. 2005673 inlägg Jag tror du ska skriva så här (otestat):
pnl.Style.Add("display","none")
...och visibility:hidden ska det nog vara, men har du display:none så behöver du ju inte ha med det alls.
GimboMedlem sedan dec. 20001 626 inlägg Funkade fint med
pnl.Style.Add("display", "none");
pnl.Style.Add("visibility", "hidden");
men hur blir det med classen
pnl.CssClass = "ContextMenuPanel";
? den kommer inte ens med när jag kollar i källkoden?
GimboMedlem sedan dec. 20001 626 inlägg löste d
pnl.Attributes.Add("class", "ContextMenuPanel");
ska d va