Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Växla stilklass på element i browserkontroll

Postades av 2007-06-01 22:05:30 - Per Persson, i forum c# (c-sharp), Tråden har 18 Kommentarer och lästs av 1163 personer

Idag på jobbet skulle vi växla mellan två utseenden på ett HTML-dokument i en webbläsarkontroll i en .Net-applikation. Tanken var att ändra attributet class på bodyelementet. Att köra browser.Document.Body.setAttribute("class", "...") gick inte. Inte heller browser.Document.Body.className = "..." funkade. Dessa två sätt är standardiserade. Men Microsoft har förstås valt att blanda ihop dessa: browser.Document.Body.setAttribute("className", "...").

Varför? Hur sjutton har man tänkt?


Svara

Sv: Växla stilklass på element i browserkontroll

Postades av 2007-06-04 07:53:10 - Ted Nyberg

<b>Hur sjutton har man tänkt?</b>
Meningen är att Window-elementet är själva browserfönstret. Document-elementet är en HTML-sida i en container som kan vara antingen ett browserfönster eller ett frameset. Mot bakgrund av det vore det fel att försöka modifiera en BODY-tagg som tillhör Window-elementet.

<b>Edit:</b>
Måste bara fråga, ska inte din fråga vara i Javascript-forumet?


Svara

Sv:Växla stilklass på element i browserkontroll

Postades av 2007-06-04 08:20:49 - Per Persson

<b>Måste bara fråga, ska inte din fråga vara i Javascript-forumet?</b>

Absolut inte. Applikationen är skriven i C# och har webbläsarkontroller (http://msdn2.microsoft.com/en-us/library/system.windows.forms.webbrowser.aspx) ordnade i en "lista". När man klickar på en post i listan (dvs på en webbläsarkontroll), skall posten markeras. Vi har löst det genom att utnyttja stilmallar och ändra stilmallsklassen på bodyelementet.



<b>Meningen är att Window-elementet är själva browserfönstret. Document-elementet är en HTML-sida i en container som kan vara antingen ett browserfönster eller ett frameset. Mot bakgrund av det vore det fel att försöka modifiera en BODY-tagg som tillhör Window-elementet.</b>

Förstår inte hur du menar att det skulle vara fel att modifiera bodyelementet i ett dokument där man vet att ett bodyelement finns.


Svara

Sv: Växla stilklass på element i browserkontroll

Postades av 2007-06-04 09:24:10 - Andreas Thorarins


du sätter stilmall på din sida med Page.StyleSheetTheme

du behöver altså inte trixa med nått javascript om du har en postback.
ska du byta css class på body tagen så får du sätta den som runat="server"

när man byter stilmall kan det dock bli problem med att den är cachad på clienten.


Svara

Sv:Växla stilklass på element i browserkontroll

Postades av 2007-06-04 09:26:50 - Ted Nyberg

Andreas har rätt. Exempelvis kan du sätta runat=server på din HEAD-tag för att komma åt den via Header-egenskapen i Page-klassen. Du kan modifiera vilken HTML-tag som helst innan renderingen sker till webbläsaren.

Anledningen till att jag frågade om Javascript var att den syntax du skrev ut var Javascript-kod...


Svara

Sv:Växla stilklass på element i browserkontroll

Postades av 2007-06-04 09:42:08 - Per Persson

<b>du behöver altså inte trixa med nått javascript om du har en postback.</b>

Men vi har INTE använt JavaScript alls.



<b>ska du byta css class på body tagen så får du sätta den som runat="server"</b>

Gäller inte runat="server" bara webbapplikationer? Detta är en fristående applikation. Webbsidan är INTE skriven i C# utan i PHP.


Svara

Sv: Växla stilklass på element i browserkontroll

Postades av 2007-06-04 10:01:33 - Andreas Thorarins

"Gäller inte runat="server" bara webbapplikationer? Detta är en fristående applikation. Webbsidan är INTE skriven i C# utan i PHP."

vad gör du då i C# tråden ?


Svara

Sv:Växla stilklass på element i browserkontroll

Postades av 2007-06-04 10:18:36 - Per Persson

Den fristående applikationen är skriven i C#.


Svara

Sv: Växla stilklass på element i browserkontroll

Postades av 2007-06-04 10:23:20 - Ted Nyberg

Nu har du tappat bort mig totalt... Vad är det du försöker göra? Redigera en textfil?


Svara

Sv:Växla stilklass på element i browserkontroll

Postades av 2007-06-04 10:43:59 - Per Persson

Vi har ett program skrivet i C#. Detta är <b>inte</b> en webbapplikation, utan en fristående .Net-applikation.

I detta program finns ett antal webbläsarkontroller som hämtar sidor från webben för att presentera information om olika produkter. Dessa sidor genereras av PHP, men det har ingen egentlig betydelse för uppgiften. Programmet ser ju ändå bara den genererade HTML-koden.

När man klickar på informationen för en viss produkt, alltså på tillhörande webbläsarkontroll, skall bakgrunden för produktinfon bli mörk och texten ljus, så att den ser markerad ut. Detta sköter vi genom att från programmet ändra attributet class på bodyelementet i webbsidan.

Det hela fungerar bra och vi har egentligen inget problem.

Som vanligt har dock Microsoft hittat på något konstigt. För att ändra värdet på attributet class i elementet e, borde man kunna skriva e.SetAttribute('class', '...'). Men si, det går inte. I stället skall man namnge attributet som 'className', alltså skriva e.SetAttribute('className', '...').

Min fråga är därför varför Microsoft ännu en gång har kringgått standarderna.


Svara

Sv: Växla stilklass på element i browserkontroll

Postades av 2007-06-04 10:50:10 - Ted Nyberg

<b>Det hela fungerar bra och vi har egentligen inget problem.</b>

Så vad <b>är</b> problemet då? :) Jag var inte medveten om att det fanns någon ratifierad standard för hur embedded web controls ska fungera i WinForms...


Svara

Sv:Växla stilklass på element i browserkontroll

Postades av 2007-06-04 11:18:10 - Per Persson

<b>Jag var inte medveten om att det fanns någon ratifierad standard för hur embedded web controls ska fungera i WinForms...</b>

Inte för hur webbkontrollerna skall fungera, däremot för hur man kommer åt och ändrar i elementen. Har du inte hört talas om DOM?


<b>Så vad <b>är</b> problemet då? :)</b>

Att Microsoft inte följer standard.


Svara

Sv: Växla stilklass på element i browserkontroll

Postades av 2007-06-04 11:20:13 - Ted Nyberg

Sluta gnäll, lös problemet! =)

För övrigt har inte DOM att göra med vilken syntax <b>Microsoft</b> använder för <b>Microsoft</b>-kontroller. Jag tror du blandar ihop saker lite grann...


Svara

Sv:Växla stilklass på element i browserkontroll

Postades av 2007-06-04 11:32:44 - Per Persson

<b>Sluta gnäll, lös problemet! =)</b>

Och hur påverkar jag Microsoft?


<b>För övrigt har inte DOM att göra med vilken syntax Microsoft använder för Microsoft-kontroller.</b>

Varför inte? De följer ju nästan DOM, men på just denna punkt har de hittat på något annat. Hur förväntar du dig att ett attribut med namnet xyz skall ändras? Genom SetAttribute("uvw", "...")? Varför skall man ange ett annat namn än attributet har?


Svara

Sv: Växla stilklass på element i browserkontroll

Postades av 2007-06-04 11:45:12 - Ted Nyberg

Men i Javascript använder man en egenskap vid namn "className" för att sätta attributet "class" på ett objekt i DOM-trädet.

Så viss logik finns det väl? Du pratar ju trots allt om att modifiera DOM-objekt på klientsidan...

Eller så ogillar du Javascript-notationen också? ;)


Svara

Sv:Växla stilklass på element i browserkontroll

Postades av 2007-06-04 11:57:38 - Per Persson

Visst, jag ser kopplingen till den egenskapen. Men i det fallet skriver man e.className = '...'. Det är alltså en egenskap direkt på elementet. Attributet heter däremot fortfarande class.

De två varanter som hade varit korrekta är alltså
1) e.className = "..."; // Jag hade accepterat e.ClassName för att följa Microsofts CamelCase.
2) e.setAttribute("class", "..."); // Och här accepterar jag e.SetAttribute()

Varianten e.SetAttribute("className", "...") är dock ologisk.


Svara

Sv: Växla stilklass på element i browserkontroll

Postades av 2007-06-04 20:22:00 - Per Persson

Ni var inne på att vi använde fel metod för att lösa problemet. Var det någon av er som hade ett bättre förslag?

(Och tycker ni fortfarande att tråden ligger i fel forumdel?)


Svara

Sv:Växla stilklass på element i browserkontroll

Postades av 2007-12-02 00:42:32 - Per Persson

Ingen som har ett bättre förslag? Och är det någon som fortfarande tycker att tråden ligger i fel forumdel?


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 710
27 958
271 751
569
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies