Buttons mit Links hinterlegen aus XMLFile
- VB.NET
Sie verwenden einen veralteten Browser (%browser%) mit Sicherheitsschwachstellen und können nicht alle Funktionen dieser Webseite nutzen.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
Es gibt 51 Antworten in diesem Thema. Der letzte Beitrag () ist von Snaptu.
-
-
Doener schrieb:
Über die Eigenschaft Text, aber was soll dieses Wissen bringen?
Diese Eigenschaft kannst du im Code verändern. Und die XML hast du ja schon zerpflückt, so dass du den Text für den Button hast... -
schreib einfach mal DeinButton. und siehe da es Das Studio schlägt dir Dinge wie DeinButton.Height und DeinButton.Width vor. So und jetzt such dir aus was du benötigst.
Wenn dein Wissen nach "Hello World" schon endet dann fehlt dir weit mehr wissen als den Text eines Button's zur Laufzeit zu ändern.
Wer fragt, ist ein Narr für eine Minute. Wer nicht fragt, ist ein Narr sein Leben lang.Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Snaptu“ ()
-
Snaptu schrieb:
schreib einfach mal DeinButton.
Du, er schreibt es dann wirklich wörtlich und beschwert sich gleich, dass das VS nichts vorgeschlagen hat... -
-
-
-
Nehmt es mir nicht übel, aber wenn nicht so eine Antwort wie von Rod kommt, dann bringt es mich nicht weiter. Was ich machen will, habe ich mehrfach beschrieben. Ich brauche eine Lösung wie:
eine Form, einen Button einfügen, diesen Code in die Form, diesen in die XML Datei und fertig. Den text kann ich dann über die XML steuern. Dann kann ich mir das für andere Objekte selber zusammen reimen. -
Du hast hier schon alles nötige Wissen, den Rest musst du dir nur
Doener schrieb:
zusammen reimen.
Du weißt, wie du die Beschriftung von Button veränderst. Du weißt, wie du die Links aufrufst. Du weißt, wie du die Links aus der XML rausholst. Rod hat dir alles schon vorgeturnt. Den Rest musst du nur kombinieren. -
Das Problem ist du liest NICHT. Die Lösung steht mehrfach schon hier drin. DU hast deinen Text ja schon aus der XML in zerlegter Form soweit ich das sehen kann.
So und jetzt Änderst du die Text - Eigenschaft des Buttons in den Text den du aus der XML Datei hast. Ein ToolstripmenuItem hat komischerweise eine .Text Eigenschaft.
Wie wird diese bei einem Button dann heißen?
Dir gefällt RoD nur weil er dir eine Codezeile hingeklatscht hat die du blind in deinen Code kopieren kannst ohne zu lernen....
Wer fragt, ist ein Narr für eine Minute. Wer nicht fragt, ist ein Narr sein Leben lang. -
Der Code von mir funktioniert aber leider nicht. Und ich weiß daher nicht, wo der Fehler liegt, daher kann ich eure Tipps nicht testen oder ausprobieren. Es bringt mir im Moment nichts wo ein.TextEigeschaft dran zu hängen,weil es davor schon klemmt
Quellcode
- Imports System.Xml
- Public Class Form1
- Private Function GetMenus() As XmlDocument
- Dim xxml As XmlDocument = New XmlDocument()
- xxml.Load("test.xml")
- Return xxml
- End Function
- Public Class DynamicMenuSubs
- Public Sub Menu1A()
- Debug.Print("Called Menu1A")
- End Sub
- Public Sub Menu1B()
- Debug.Print("Called Menu1B")
- End Sub
- Public Sub Menu1C()
- Debug.Print("Called Menu1C")
- End Sub
- Public Sub Menu2()
- Debug.Print("Called Menu2")
- End Sub
- Public Sub Menu3A()
- Debug.Print("Called Menu3A")
- End Sub
- Public Sub Menu3B()
- Debug.Print("Called Menu3B")
- End Sub
- End Class
- Private Sub BuildMenus()
- Dim xxml As XmlDocument = GetMenus()
- Dim toplevels As XmlNodeList = xxml.SelectNodes("Menus/TopLevel")
- Dim node As XmlNode
- For Each node In toplevels
- Dim tsmi As New ToolStripMenuItem
- tsmi.Text = node.Attributes("text").Value
- Dim sublevels As XmlNodeList = node.SelectNodes("NextLevel")
- If sublevels.Count = 0 Then
- tsmi.Tag = node.InnerText
- AddHandler tsmi.Click, AddressOf DynamicMenuHandler
- Else
- Dim subnode As XmlNode
- For Each subnode In sublevels
- Dim ddi As New ToolStripMenuItem
- ddi.Text = subnode.Attributes("text").Value
- ddi.Tag = subnode.InnerText
- AddHandler ddi.Click, AddressOf DynamicMenuHandler
- tsmi.DropDownItems.Add(ddi)
- Next
- End If
- MenuStrip1.Items.Add(tsmi)
- Next
- End Sub
- Private Sub DynamicMenuHandler(ByVal sender As System.Object, ByVal e As System.EventArgs)
- Dim s1 As ToolStripMenuItem = DirectCast(sender, ToolStripMenuItem)
- If s1.Tag.ToString.Length > 0 Then
- Dim SubType As System.Type = GetType(DynamicMenuSubs)
- Dim SubInfo As System.Reflection.MethodInfo = SubType.GetMethod(s1.Tag.ToString())
- Dim SubController As New DynamicMenuSubs
- SubInfo.Invoke(SubController, Nothing)
- End If
- End Sub
- End Class
-
-
Die Eingenschaft .Text! Also btn.Text .... nicht btn.TextEigenschaftThere is no CLOUD - just other people's computers
Q: Why do JAVA developers wear glasses?
A: Because they can't C#
Daily prayer:
"Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP." -
Doener schrieb:
Der Code von mir funktioniert aber leider nicht.
Wir können aber nicht hellsehen, wo genau dein Code (den du nicht lesbar hingeklatscht hast) nicht funktioniert, und vor allem was du damit meinst.
Der Code von Rod ging doch?
Snaptu schrieb:
Wie wird diese bei einem Button dann heißen?
Das hat er ja sogar selbst hingeschrieben... -
Was generell interessant wäre:
- existieren die Buttons bereits im Designer oder werden diese im Code generiert?
Falls dieser bereits im Designer hinzugefügt wurde brauchst du nur den Wert aus dem XML-File (was ich mitbekommen habe lest du diesen ja bereits aus) der Text-Eigenschaft deines Buttons hinzufügen. Um dann anschließend mit dem Button was zu machen (in deinem Fall einen Link zu öffnen) hast du bereits das richtige Event oben gefunden (das Click Event wird dir standardmässig generiert wenn du den Button doppelklickst).
lgScheduleLib 0.0.1.0
Kleine Lib zum Anlaufen von Code zu bestimmten Zeiten -
Ich fasse mal zusammen:
Der Code von Rod geht, aber nur bei Verwendung von einer TXT Datei. Mir ist es sogar gelungen, dies für jedes Element zu übernehmen, also Button, menü etc.
Ich möchte das ganze nun in Form von XML machen - da kann ich mir nicht so recht den Übergang von der TXT zu XML herleiten
Mein gesposteter Code klemmt nirgends - das ist ja mein Problem. VB zeigt keinen Fehler an und startet das Programm - aber der Button bleibt ohne Text
-
1. hast du durch dein wildes zusammenkopieren jetzt 121 Zeilen Müll angesammelt und weißt nicht mehr was dein Code eigentlich macht.
2. geht dein Vorhaben eigentlich weit kürzer
3. mehrere Teilaufgaben = XML einlesen und notwendige Texte rausfiltern, Beim Laden (form_load) der Anwendung die Button's mit dem Text der XML ausstatten, Beim klick eines Buttons eine Webseite öffnen
4. ich an deiner Stelle würde neu Anfangen oder gleich mal so das ich mich Informiere über : Klassen, Events, Variablen, Funktionen, usw,..... Grundlagen eben.Wer fragt, ist ein Narr für eine Minute. Wer nicht fragt, ist ein Narr sein Leben lang. -
Liegt also das eigentliche Problem daran, dass du das XML-File nicht auslesen kannst?
lgScheduleLib 0.0.1.0
Kleine Lib zum Anlaufen von Code zu bestimmten Zeiten -
Ja, das stimmt. Ich habe viel kopiert, bin auch kein Programmierer. Leider ist das "Programm" insgesamt schon über 1 MB an Code groß, so das ich nicht neu anfangen kann - nur weil ich eine neue Anforderung neu hinzugekommen ist. Wenn mein Vorhaben auch viel einfacher geht, dann bitte ich darum, es mir zu zeigen wie.
mehrere Teilaufgaben = XML einlesen und notwendige Texte rausfiltern, Beim Laden (form_load) der Anwendung die Button's mit dem Text der XML ausstatten, Beim klick eines Buttons eine Webseite öffnen
genau das möchte ich
-
-
Ähnliche Themen
-
5 Benutzer haben hier geschrieben
- Gast (35)
- Snaptu (8)
- RodFromGermany (4)
- fichz (3)
- Schamash (2)