hustbaer schrieb:
Klar kannst du.
UB ist es nur wenn das Objekt selbst const ist.
Wenn dagegen einfach nur ein T const* , auf ein T was selbst gar nicht const ist, übergeben wurde, dann kann man problemlos das const wegcasten und in dem T drinnen rummalen.
Ups, stimmt da hab ich mich zu weit aus dem Fenster gelehnt.^^
Aber man könnte es ja trotzdem anbieten, nur halt den (ohnehin bösen) const_cast weglassen.
Was für eine Forumsoftware ist das?
UA sollte irrelevant sein. Vielleicht weil du vorher überhaupt keinen UA gesendet hast?
EDIT:
Es gibt für Firefox verschiedene addons, die den UA ändern können.
Einfach mal nen UA weg oder leer lassen. Was passiert?
Oder ein tool benutzen, das dir das erlaubt (wäre aber eher der fortgeschrittenen Modus).
mgaeckler schrieb:
EOP schrieb:
Diese Frage stelle bitte an die NSA, die kennen Deinen Quelltext besser ALS wir.
Sei liaba froh dass i ned boarisch schreib.
Man muss ja nicht immer gleich mit dem Schlimmsten drohen.
Zu den buttons:
In der MFC müssen die buttons in der Z-Ordnung hintereinander liegen und du musst eine Gruppe für sie definieren.
Was ja auch Sinn macht. Irgendwie muss das Programm ja z.B. bei 5 buttons wissen, wo die eine Gruppe aufhört und die nächste anfängt.
Kenne mich mit C# aber überhaupt nicht aus und mit WinForms noch viel weniger.
Dann wäre es wohl besser, wenn du einmalig (quasi als Cache) die Tiles als Bitmap lädst (sollten ja nicht so viele sein, max. ein paar Dutzend ;-), evtl. sogar erst bei Bedarf (schreib dir dazu eine Klasse/Methode mit einem Dictionary<string, Bitmap> welche nachschaut ob es die Bitmap mit dem Dateinamen schon gibt, und wenn nicht dann lädt).
Bei deinem bisherigen Ansatz würde ja eine Bitmap x-fach geladen werden (wenn gleiche Tiles benutzt werden).
Ja, das geht genau so einfach. Erstelle einfach eine neue Klasse und leite dann von dem Steuerelement ab:
public class MyTreeView : TreeView
{
}
Nun kannst du dort alle Methoden, Eigenschaften und Ereignisse hinzufügen, die du haben möchtest.
Bei den Ereignissen sollte man dann jedoch einfach die virtuellen On...-Methoden überschreiben (und dadrin dann die base.On...()-Methode aufrufen), anstatt sich an das öffentliche Ereignis zu hängen.
Wenn du diese Klasse (d.h. das zugehörige Projekt) einmal kompiliert hast, dann steht es auch im Forms-Designer zur Verfügung.
Dann kannst du einfach im Form dann dieses neue Steuerelement benutzen.
Bei zusammengesetzen Controls würde man aber besser ein UserControl (Benutzersteuerelement) erstellen (z.B. ein Label mit TextBox und ein Button daneben).
NullBockException schrieb:
Oder hab ich da jetzt nen Denkfehler drine?;)
Ja.
Denk es nochmal durch.
Der Sender hält den Empfänger am Leben. Umgekehrt nicht.
(Mal abgesehen von statischen Membervariablen etc.) Nur ein Objekt das selbst durch irgendwas am Leben gehalten wird kann ein anderes Objekt am Leben halten.
Hallo deine Lösung hab ich schon gesehen im Endefekkt ist sie nicht viel anders als meine mit der Anpassung des Array-Typs nur das du es danach machst.
Und meine Antwort war auf deine Frage nach einer eleganteren Lösung gemünzt :). Und einer kurzen Erklärung worin genau der Fehler bestand.
Mfg Marco
Was soll c:\Documents sein?
Ich kenne c:\Users und c:\Documents and Settings , aber c:\Documents - das klingt nach nem ganz normalen Pfad.
Natürlich sollte auch der nicht hardcoded sein. Aber das ist dann wieder ein anderes Thema.
Dafür gibt es das Startup-Ereignis, s. z.B. Command-line parameters in WPF.
Die im Explorer angeklickte Datei steht dabei im ersten Parameter (vorausgesetzt deine Extension ".xyz" ist mit deiner WPF-Anwendung verknüpft).
Mit
char1_server1.Text = reader[2].ToString();
schreibst (bzw. überschreibst) du ja jeden ausgelesenen Wert in das eine Label.
Wenn du eine Liste anzeigen möchtest, dann nimm am besten gleich ein Listen- bzw. Tabellencontrol (z.B. ListBox, ListView, DataGridView) - und les dich mal in "DataBinding" ein (Stichwort: DataSource).
Wie so ziemlich jeden Typen der von Object erbt, da das Framework (zumindest in der Art und Weise wie der TE es zurück gibt) einfach .ToString() des Objektes aufruft. Auch wenn das jetzt nicht das Thema sein sollte.