Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von syn87
Thema: Listview: ItemSelectionChanged
Am im Forum: GUI: Windows-Forms

Also ich habs ausprobiert und es zeigt noch nicht den gewuenschten Effekt.

Sowohl ItemSelectionChanged als auch SelectedIndexChanged feuern beim Wechsel eines Elements 2 mal. Dabei signalisieren sie zuerst den Zustand, dass kein Item selektiert ist und beim naechsten Feuern dann das ausgewählte. Folge ist, dass meine Groupbox flackert, da ich sie deaktivieren moechte falls kein Element ausgewählt ist. Die Prüfung auf SelectedItems.Count > 0 verwende ich bereits!

Gruß

Thema: Listview: ItemSelectionChanged
Am im Forum: GUI: Windows-Forms

thanks for your guidance ich werds gleich ausprobieren.

Gruß

syn87

Thema: Listview: ItemSelectionChanged
Am im Forum: GUI: Windows-Forms

Hallo zusammen,

wiedermal eine Frage bzgl der (fuer mich) verwirrenden Events. Ich hab schon ein bisschen rumgelesen und grundlegend kann ich ja verstehen, dass es so gemacht wurde. Allerdings hab ich zeitweise erhebliche Probleme wenn das ItemSelectionChanged-Event beim wechsel der selektion 2 mal feuert.

Szenario in meinem fall:
ich habe eine Listview und eine eigenschaftsgroupbox. ist ein element selektiert soll die groupbox enabled sein, ansonsten disabled. vllt kann man sich jetzt schon denken, dass beim selektionswechsel die groupbox kurz flackert weil sie halt kurz auf disabled gesetzt wird. meine einzige loesung besteht darin mit dem ersten feuern einen timer zu starten, der dann kurz danach nochmal auf listview.SelectedItems.Count > 0 prueft.


LG

syn87

Thema: ComboBox und DataBinding
Am im Forum: GUI: Windows-Forms

Nein, ich glaube du hast das nicht ganz verstanden.

DataSource bleibt immer gleich. Nur der ausgewählte Text/Value soll korrekt uebermittelt werden.

Gruß

Thema: ComboBox und DataBinding
Am im Forum: GUI: Windows-Forms

Hat denn niemand eine Idee? Ums nochmal kurz zu formulieren:

ComboBox ist an eine Liste gebunden mit Valuemember (positive ganze zahl) und displaymember (strassennamen).
Weiterhin moechte ich die Auswahl der ComboBox binden. Im falle der auswahl eines Items soll value in die variable eingetragen werdne. Wird jedoch eine nicht vorhandene Auswahl getroffen (Leeres Feld / Neues Item), dann soll die gebundene Variable 0 werden.


gruß matze

Thema: ComboBox und DataBinding
Am im Forum: GUI: Windows-Forms

Hallo Leute.

Langsam weiß ich mir mit folgendem Problem nicht mehr zu helfen. Vllt und wahrscheinlich mach ich irgendetwas falsch.

Ich habe DataSource der ComboBox an eine Liste gebunden. Value und Display sind jeweils strings. (Bis hierhin muesste auch alles funktionieren)

Die Auswahl der ComboBox wollte ich nun an eine Eigenschaft binden.

new Binding("SelectedValue", kunde, "Strasse")

In der Liste sind also sehr viele Strassen. Die Value gibt mir dabei die ID aus. Wenn ich nun die Daten kontrolliere, die meine Variable durch das Binding erlangt, dann stimmen diese Werte nicht. Es ist nämlich so, dass gerade in dem Fall, dass ich ein Item auswähle, welches keine Value hat (also eine eigene Eingabe), das schreiben von Strasse nicht ausgeführt wird. Ebenso verhält es sich bei mir mit den Events SelectionChanged (ist vorher ein Item ausgewaehlt, und ich gehe rein und loesche es, so wird das event nicht ausgeloest).

Gruß Matze

Thema: Mischen von C# und C++?
Am im Forum: Rund um die Programmierung

Geht das auch mit C#? Denn es soll C#(!) in C++ eingebunden werden und nicht umgekehrt.

Thema: Mischen von C# und C++?
Am im Forum: Rund um die Programmierung

Naja es soll gewissermaßen Zeigen mit welchen Hürden ich fertig werde (denke ich). Nebenbei ist die aktuelle Entwicklung ebenfalls auf diesem Level.

Zurueck zum Problem: Dafür 2 verschiedene Projekte machen kommt mir schon sehr sinnvoll vor, da ich nämlich keine Fremden Codedateien in das jeweils andere Projekt packen kann (C# -> C++ und umgedreht). Wie allerdings füge ich Eventhandler und aehnliches zur GUI hinzu? Und ueberhaupt: Wie bette ich das C# Panel in ein C++ Fenster ein?

Thema: Mischen von C# und C++?
Am im Forum: Rund um die Programmierung

Hallo,

als Einstieg in einen Nebenjob hab ich u.a. die Aufgabe bekommen, eine GUI in C# zu schreiben bei der ich die Events allerdings in C++ programmiere.

Bei der Befragung von Google ist mir nix brauchbares untergekommen. Vllt kann mir einer von euch ein besseres Stichwort nennen oder direkt helfen.


Genauer Wortlaut:

"Das C# Panel soll reine GUI ohne Logik sein. Im C++ Fenster sollen einige Buttons im C# Panel mit EventHandler versehen werden, die Aktionen ...."


Lg

Thema: Lizenzierung / Key / Serial / Seriennummer
Am im Forum: Rund um die Programmierung

Zu meinen oben genannten vorstellungen: Man könnte ja auch auf Basis des Mainboards eine Registrierung vornehmen. Dies wird für gewöhnlich nicht so oft ausgetauscht. Sollte dies trotzdem passieren kann man immernoch bei der Hotline anrufen. Ich möchte an der Stelle auch nochma sagen, dass so ein System natuerlich nur bei Software mit hohen Entwicklungskosten Sinn macht (was natürlich mit der Qualität der Software einhergeht). In Anbetracht dessen halte ich es fuer einen vertretbaren Kopierschutz.

Thema: Lizenzierung / Key / Serial / Seriennummer
Am im Forum: Rund um die Programmierung

Das Thema liegt nun schon eine Weile zurück, aber ich möchte dennoch meine Vorstellungen von einem nutzbaren System andeuten:

1. Aktivierungsschluessel eingeben (brauch garnicht SO lang sein)

2. Anfrage mit Schlüssel an den Produkthersteller

3. Identifizierung des Rechners über die MAC Adresse oder irgendetwas anderes Rechnerspezifisches

4. Assoziation Key - Rechner in Datenbank speichern

Sollte eine Installation fuer einen neuen Rechner angefordert werden, so kann man diese gleich abweisen. Unter anderem übersteht dieses System auch das Formatieren des Rechners (dies ist der Grund, weshalb ich viele Schlüsselverfahren so scheisse finde). Sollte dennoch eine Neuinstallation (vllt auf einem neuen Rechner) noetig sein. So könnte man beim hersteller anrufen und dies anfordern.

Kritik dennoch erwuenscht

Thema: DataBinding aktualisieren
Am im Forum: GUI: Windows-Forms

Eine Eigenschaft wird an den Text einer Textbox gebunden. Die Eigenschaft wird allerdings erst beim Verlassen der Textbox gesetzt. Jedenfalls habe ich dieses Verhalten beobachtet, nachdem ich einen Thread gestartet habe, der mir alle 5 Sekunden das Objekt in der Console anzeigt.

Dieses "Verlassen des Textfeldes" wird in einem Fall nicht getriggert. Nämlich wenn ich in dem Textfeld bin und Strg+S drücke (für diese Tastenkombination ist eine Aktion im MDI Fenster vereinbart). Falls dieser Eventhandler Relevanz enthaelt (was ich nicht glaube), hier einmal kurz aus dem Kopf ein bisschen Pseudocode dazu:


Key_Down {
  if (KeyData == Strg + S && activeMDIChild is saveable) {
    // Saveable ist ein Interface mit der Funktion save()
    if (MessageBox("Daten sichern?").ShowDialog() == DialogResult.Yes)
        ((Saveable)activeMDIChild).save();
  }
}


Ich hoffe die Sache ist jetzt etwas klarer.

Danke im Voraus.

Thema: DataBinding aktualisieren
Am im Forum: GUI: Windows-Forms

Hi Leute,

seit kurzem nervt mich eine kleine Eigenheit des DataBindings. Angenommen ich habe eine ComboBox. Der ausgewählte Text ist an die Eigenschaft eines Objektes gebunden. Soweit funktioniert alles korrekt. Jedoch habe ich im MDI Parent ein KeyPreview für Strg+S eingerichtet, die die save() Prozedur vom jeweiligen Child aufrufen soll. Durch diese Vorgehensweise verlasse ich die ComboBox. Jedoch wird der Text vom DataBinding nicht mit der Anzeige synchronisiert. Die Anzeige hat beinhaltet nämlich das ausgewählte Element. Im Objekt steht etwas vollkommen anderes.

Jemand eine Idee?

Gruß

Thema: Liste von eigener Klasse an DataSource binden
Am im Forum: GUI: Windows-Forms

Ok danke.

Vllt findet sich noch jemand, der was zum eigentlichen Problem sagen kann.

Thema: Liste von eigener Klasse an DataSource binden
Am im Forum: GUI: Windows-Forms

Ich hab leider noch nix von DataTable gehoert. Aber ich denke du gehst davon aus, dass das Program Zugriff auf die DB hat, was jedoch nicht so ist. Die Daten werden vom Server abgerufen und jede Zeile wird mittels eines Objekts folgender Klasse gespeichert


    [Serializable]
    public class Row
    {
        Dictionary<string, string> row;

        public Row()
        {
            this.row = new Dictionary<string, string>();
        }

        public string this[int key]
        {
            get
            {
                int i = 0;
                foreach (string k in row.Keys)
                {
                    if (i == key)
                        return this[k];
                    i++;
                }
                return "";
            }
        }

        public string this[string key]
        {
            get
            {
                return row[key];
            }
            set
            {
                row[key] = value;
            }
        }

        public bool ContainsKey(string k)
        {
            return row.ContainsKey(k);
        }

        public Dictionary<string, string>.KeyCollection Keys
        {
            get
            {
                return row.Keys;
            }
        }
}

und danach zu einer List zusammengefasst. Um die Netzwerklast zu minimieren, koennen verschiedene Listen von Rows synchronisiert werden. Aendert sich zum Beispiel die Ort Tabelle, so wird diese Liste neu verschickt. Deshalb ist der Typ beim uebertragen (List<Row>) auch nicht mehr aenderbar... (zumindest nach meinem momentanen stand) ... ja is schon kompliziert

Thema: Liste von eigener Klasse an DataSource binden
Am im Forum: GUI: Windows-Forms

ja das mit dem control hab ich leider vergessen. in meinem fall handelt es sich um eine combobox.

meine idee ( um nochmal darauf zu sprechen zu kommen ) war es, fuer alle moeglichen db tabellen einen typ zu erstellen, der die Row Klasse im grunde nur um 2 Eigenschaften erweitert (zur laufzeit). naemlich display und value (was man zum binden der liste ja braucht) eigenschaft.

meine momentane idee geht in die richtung, dass ich fuer alle moeglichen feldnamen eine eigenschaft in der Row Klasse anlege. zb.

public string ORT_ID { get { return this["ORT_ID"]; } }

gefaellt mir allerdings auch nicht so sehr. es ist schade dass man beim datasource binden keine funktionen mit parameter uebergeben kann oder geht das vllt doch? hab es bisher nur mit eigenschaften gesehen.


lg matze

Thema: Liste von eigener Klasse an DataSource binden
Am im Forum: GUI: Windows-Forms

Hallo Jungs,

ich hab mal wieder ein kleines Problem beim programmieren meiner Server-Client Anwendung.

Der Client bekommt vom Server ein List<Row> Element. Row ist ein selbst erstellter Datentyp, der eine Antwortzeile der Datenbank repräsentiert.

Bei SELECT NAME, VORNAME FROM KUNDE hab ich also eine Liste von Rows, die über this["NAME"] und this["VORNAME"] die jeweiligen Daten returnen (alternativ auch this[0] und this[1]).

Wo ich jetzt Probleme habe ist beim DataSource anlegen. Im grunde genommen wäre es so, dass ich pro DB Table eine weitere Klasse anlege. Wie z.b.


class Ort {
public string Display { get { return this["ORT"]; } }
public string Value { get { return this["ORT_ID"]; } }
}

Dabei muesste Ort meiner meinung nach nur noch von Row erben und ich muesste die List<Row> auf List<Ort> casten. Geht jedoch nicht. Leider bin ich in dieser Idee relativ festgefahren und weiss nich so recht weiter. Eine neue Liste zu generieren kann ja auch nicht Sinn der Sache sein.

Hat jemand eine Idee oder anderen Ansatz?


Danke füers durchlesen und hoffentlich faellt jemanden was ein

Thema: partial class und Assembly
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Das heisst im Endeffekt ich muss die volle Funktionalitaet in die DLL schreiben?

Thema: partial class und Assembly
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo Jungs,

ich hoffe der Thread sagt noch das nötigste aus. Wusste nicht so recht wie ichs beschreiben sollte.

Es geht darum dass ich eine Remoting.dll habe, die der Server sowie der Client als Assembly Verweis besitzen.

In der Remoting.dll gibt es eine serialisierbare Klasse Data. Diese möchte ich mit dem partial Schlüsselwort versehen, um sie auf Server und Client Seite einzeln zu erweitern. Die Idee dahinter ist, dass logischerweise der Server nur Setzen muss und der Client nur Lesen. Bzw gibt es auch noch weitere Methoden, die z.b. nur auf Server Seite zur Verfügung stehen sollen.

Bei einem kleinen Test musste ich allerdings feststellen, dass ich kein Zugriff auf die Methoden habe, die in der Remoting.dll vorhanden sind und umgekehrt.

Hat jemand eine Lösung parat bzw einen Tipp wie ichs besser machen kann?

Mfg

Matze

Thema: Klonen eines Forms
Am im Forum: GUI: Windows-Forms

Ok ihr habt (natürlich) recht. Den Thread über die Controls hab ich auch gelesen. Aber manchmal sieht man den Wald vor lauter Bäumen eben nicht Dank an euch beide.

Thema: Klonen eines Forms
Am im Forum: GUI: Windows-Forms

Hallo Leute,

für eine Client-Server Applikation benötige ich eine Möglichkeit, ein bestehendes Form zu klonen. Hintergrund des ganzen ist, dass jedes verwendete Form innerhalb der Anwendung beim start geladen wird. Gleichzeitig werden auch diverse Felder mit Daten gefüllt, die vom Server kommen. Um also Datentransfer einzusparen, möchte ich z.b. ein "Kunde Anlegen" Form klonen, ohne das urspruengliche Form (das am anfang geladen wurde) zu veraendern. Kann mir vllt jmd helfen bzw eine Idee geben?

Mfg Matze

Thema: Combobox zeigt keine Itemlist an
Am im Forum: GUI: Windows-Forms

wenn ich in die combobox reinklicke und die pfeiltasten benutze, geht er die einzelnen eintraege durch. die items fuege ich ueber Items.Add(...) hinzu.. also was soll jetz falsch sein?

Thema: Combobox zeigt keine Itemlist an
Am im Forum: GUI: Windows-Forms

Hallo an alle,

normalerweise kennt man von solchen Dropdown Feldern ja die Eigenschaft, dass man sich alle bereits verfuegbaren Eintraege anzeigen lassen kann (dropdown eben). in meinem fall klappt das aber nicht mehr. es gibt zwar eintraege, die er auch versucht zu vervollstaendigen (autocomplete), aber ich kanns nich aufklappen.

zur info, es ist ueber ein großes usercontrol erst zum form hinzugefuegt worden zur laufzeit un hat die flat eigenschaft (sollte nich relevant sein, aber ich sags trotzdem mal dazu

mfg matze

Thema: Verteilte Anwendung mit Datenbank-Identifizierung
Am im Forum: Netzwerktechnologien

Hi el_zorro_100,

was du geschrieben hast klingt ja schonmal sehr gut (CAO) eine solche Beschreibung hab ich vorher noch nicht gefunden.

Hat vllt noch jemand gute Links, die sich mit dieser Methode beschaeftigen? Fuer mich waere auch interessant, ab wann ein CAO zerstoert wird.

Lg

Thema: Verteilte Anwendung mit Datenbank-Identifizierung
Am im Forum: Netzwerktechnologien

Die Identifizierung soll aber ueber die Datenbank Accounts erfolgen. Andererseits wäre es sicherlich garnicht so schwer. authentication mode oder sowas... ich habs bei msdn gelesen.... aber wie gesagt, das wichtige ist

  • Objektgedaechtnis
  • Verknuepfen eines Clients mit einem Datenbank Account


mfg

Thema: Verteilte Anwendung mit Datenbank-Identifizierung
Am im Forum: Netzwerktechnologien

Hi Xynratron,

es geht nicht nur um die Datenbank. In der alten Version der Software war diese schon auf einem Server bereitgestellt. Das Ziel jetzt ist es, den Client und den Server unabhaengig voneinander zu programmieren und weiterhin ein 3 Schichten Modell einzufuehren. Also GUI, Logik, Datenbank (aehnlich dem OSI-Modell).

Danke trotzdem

Thema: Verteilte Anwendung mit Datenbank-Identifizierung
Am im Forum: Netzwerktechnologien

Hallo an alle erstmal, da dies mein erster Post ist.

Ich habe schon einiges aus dem Netzwerktechnologie Bereich gelesen. So richtig hab ich aber noch nichts gefunden, was auf mein Problem passt.

Es soll eine bisher clientseitige Anwendung umgestellt werden, sodass es eine zentrale Serveranwendung gibt, die Grundoperationen bereitstellt und ebenfalls mit der Datenbank kommuniziert.

Jeder Mitarbeiter hat einen Account der in der Datenbank hinterlegt ist. Operationen die innerhalb der Anwendung ausgefuehrt werden, sollen auch mit dem Benutzer verknuepft werden, der sie ausgeführt hat.

Sprich: Nutzer A meldet sich mit Benutzername und Kennwort an. Fuegt er einen neuen Kunden hinzu, soll auch seine BenutzerID mit in die entsprechende Tabelle geschrieben werden.

Mein momentaner Stand: Grundsaetzlich habe ich das Remoting fuer mich entdeckt. Da es den Transport komplexer Datentypen erlaubt. Ich habe dahingehend das Tool von Rainbird entdeckt. Wäre ja an sich eine tolle Sache. Allerdings stehe ich vor dem Problem, dass ich nicht weiss wie ich mir auf der Serverseite den jeweiligen Client merken soll (nachdem er sich angemeldet hat) bzw die bereitgestellten Dienste nur angemeldeten Clients erlaube.

Ich hoffe es findet sich jemand, der mir weiterhelfen kann

Mfg matze