Avatar billede the-gnu.dk Nybegynder
22. maj 2005 - 15:18 Der er 12 kommentarer og
1 løsning

HtmlElementEventArgs Link

Jeg bruger en intern webbrowser i min applikation.

Når, der bliver trykket på et link, får jeg en Event (link.MouseDown += new HtmlElementEventHandler(a_MouseDown);

MEN.. Kan jeg få at vide, hvilket link og target der er trykket på? Jeg vil nemlig ikke have den til at åbne linket i en ny instans af Internet Explorer?
Avatar billede driis Nybegynder
22. maj 2005 - 15:30 #1
Du kan bruge sender parameteren. Hvis f.eks. dit link er et HtmlAnchor:

a_MouseDown(object sender, EventArgs e)
{
  if ( sender is HtmlAnchor )
  {
    HtmlAnchor link = (HtmlAnchor)sender;
    string href = link.Href;
    .
    .
    .
  }
}
Avatar billede the-gnu.dk Nybegynder
22. maj 2005 - 15:59 #2
Hmm... Sender er en HtmlElement og ikke HtmlAnchor?
Avatar billede roenving Novice
22. maj 2005 - 16:07 #3
Hvad med at lave en cast, og så checke for om der er fejl ?-)

try
{
  HtmlAnchor link =(HtmlAnchor)sender;
  .
}
catch
{
  //noget andet, hvis der opstår fejl i casten
}
Avatar billede driis Nybegynder
22. maj 2005 - 16:07 #4
Så brug samme fremgangsmåde og anvend GetAttribute til at få href.
Avatar billede the-gnu.dk Nybegynder
22. maj 2005 - 17:39 #5
Det cast virker ikke.

GetAttribute(); virker fint, men bare ikke på javascripts, som åbner et nyt vindue. Nogen forslag i forhold til den problemstilling?
Avatar billede the-gnu.dk Nybegynder
22. maj 2005 - 17:43 #6
Kan man evt. få at vide, på applikationsniveau, om den prøver at tilgå et andet program?
Avatar billede burningice Nybegynder
22. maj 2005 - 21:50 #7
du kan vel stadigvæk bruge GetAttribute og hente værdien for onClick
Avatar billede the-gnu.dk Nybegynder
22. maj 2005 - 22:58 #8
Hvis den refererer til et javascript, som laver en window.open();... Damn!
Avatar billede driis Nybegynder
22. maj 2005 - 23:12 #9
Ja, det er et problem med JavaScript'et. Men hvad er det præcist du vil opnå ? Hvis et JavaScript laver window.open, kommer der så ikke netop et nyt IE vindue ?
Avatar billede the-gnu.dk Nybegynder
23. maj 2005 - 07:55 #10
Jo, men det er dette vindue, jeg gerne vil lukke, og selv have kontrol over. Det skal nemlig ikke være muligt at højreklikke.

browser.IsContextMenuEnabled = false;
Avatar billede burningice Nybegynder
23. maj 2005 - 10:27 #11
refererer til et javascript? Du mener vel en funktion? For hvis javascriptet var skrevet inline (onClick="java script:windows.open('enside.html');" kan man jo nemt parse adresse ud.
Avatar billede the-gnu.dk Nybegynder
23. maj 2005 - 14:43 #12
Ja netop... Det er netop den situation jeg står i, og det kan ikke passe jeg er den eneste med det problem...
Avatar billede the-gnu.dk Nybegynder
20. juli 2005 - 15:19 #13
nej
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester