Laden...
Avatar #avatar-2240.jpg
Lars Schmitt myCSharp.de - Experte
Software Entwickler Witten Dabei seit 11.10.2005 2.223 Beiträge
Benutzerbeschreibung
alias BlackCoin

Forenbeiträge von Lars Schmitt Ingesamt 2.223 Beiträge

08.10.2020 - 19:31 Uhr

Nabend ma_fo,

schließen wird eigentlich über die verschiedensten Wege irgendwie immer möglich sein
das ein oder andere könnte man zwar verhindern, jedoch würde ich eher den ansatz wählen eine zweite Applikation als eine Watcher einzusetzten.

die beiden Applikationen würden dann gegenseitig überwachen und die jeweils andere wieder erneut starten.

viele grüße
lars

21.09.2020 - 13:19 Uhr

Hallo ThomasE,

auch wenn auch ich das nicht für eine gute Idee halte, aber welche zugriffstechnologie oder Datenbank benutzt du denn ?

gerade bei den Datenbanken gibt ja schon unterschiedliche SQL Dialekte so, dass sich dein Problem schon nicht so einfach zu beantworten wäre.

Bei einer eigenen DAL, sollte es je nach implementierung auch einfach möglich sein, die erstellten SQL auf irgendeine Memory DB oder sogar xml oder JSON Dokumeten umzuleiten

Viele grüße
lars schmitt

21.09.2020 - 13:12 Uhr

Hallo Lucius,

auch unter Windows Forms sollte man eigentlich nicht fensterübergreifend so einfach auch die Controls zugreifen.

Bei WPF ist jedoch schon etwas anderes, meistens wird hier das MVVM Pattern eingesetzt was auch bedeutet das die hier eine zwischen Klasse (ViewModel) hast, Du würdest dann ein Property im ViewModel ändern (Direkt oder über helper Methoden) und aufgrund der Implementation von z.B. dem INotifyPropertyChange Interface wird das das in der View Angezeigte Feld welches per Binding an das jeweilige Element gebunden ist aktualisiert.

Wenn Du dich in diesem Forum mal umschaust wirst Du viele Beispiele finden wie man auch so eine Fenster übergreifende Kommunikation sauber unter WPF hinbekommst

Viele Grüße
Lars

06.07.2020 - 16:38 Uhr

Hallo Fiech,

zum löschen von verschiedenen Datensätzen, wäre ein Delete Statement wohl die bessere Variante.

https://docs.microsoft.com/de-de/office/client-developer/access/desktop-database-reference/delete-statement-microsoft-access-sql

Viele Grüße
Lars

06.07.2020 - 00:40 Uhr

Hallo hauchian,

so wie es aktuell aussieht kennt dein MySqlCommand die Connection nicht

der Konstruktor vom MySqlCommand hat eine Überladung mit der Query und einer Connection
das sollte zumindest schonmal ausreichen das dein Code funktioniert.

des weiteren, versuche bitte so wie du es ja auch schon angedeutet hast, bei den SQL Queries auf den Parameter Weg zu setzen anstatt einzelne Strings zu Konkatenieren , da du damit unter anderem so etwas wie SQL Injection verhindern kannst.

Bei einem Insert nutzt man eigentlich nicht die Methode ExecuteReader, da diese eher für Select Queries benutzt wird, versuche es lieber mit ExecuteNonQuery()

Bitte denke zukünftig daran, beim Quellcode auch die Code Tags zu benutzen
das Hilft beim lesen ungemein.

05.11.2019 - 20:31 Uhr

Hallo sugar76,

möglicherweise ist ja auch

https://docs.microsoft.com/de-de/windows/msix/

eine Möglichkeit

Viele Grüße
lars

30.09.2019 - 18:00 Uhr

Hallo Frokuss,

ja, leider kann Visual Studio das nativ leider nicht wirklich.

es gibt zwei Möglichkeiten dieses trotzdem zu erreichen

entweder du editierst die Projektdatei manuell oder du benutzt das Add-On
https://marketplace.visualstudio.com/items?itemName=MadsKristensen.FileNesting

Viele Grüße
Lars

04.04.2016 - 19:00 Uhr

Hallo da_user,

schau doch mal hier, das könnte man dafü doch gut gebrauchen

https://github.com/kevincolyar/CronNET

Viele Grüße
Lars

31.03.2016 - 20:28 Uhr

Ja, irgendwie wurde die eingetragenen Pfade gelöscht

ich mußte ein erneutes dnvm upgrade ausführen um das .NET Execution Environment wieder richtig benutzen zu können.

Viele Grüße
LArs

15.10.2015 - 21:09 Uhr

Hallo mygil,

im Prinzip könnte man den Part FirmaX, in der Route berücksichtigen und dann auch genau den diesen Route Part reagieren.

Bei Dir wäre es dann halt, ein unterschiedliches Layout.cshtml

Viele Grüße
Lars

29.05.2015 - 00:23 Uhr

Hallo thesysde,

wie wäre es denn, mit einer von Dir erstellten abstract Class von der du ableitest.

in dieser Klasse, hättest Du dann deine globalen Funktionen und Properties und wenn du die funktion virtual machst kannst Du diese, wenn Du es benötigst sogar überschreiben.

Viele Grüße
Lars

06.03.2015 - 15:10 Uhr

Hallo C#bass,

Das Binding kann ja auch nicht funktionieren, da der DataContext im besten Falle an dieser stelle ein nur einfacher Datentyp ist und nicht etwas vom Typ IEnumerable.

Entweder Du setzt die Items der Combobox im Code direkt oder Du mußt deinem Binding eine RelativeSource mitgeben

https://msdn.microsoft.com/de-de/library/ms743599%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396

Viele Grüße
Lars

01.03.2015 - 18:32 Uhr

kannst ja mal bescheid sagen, was es geworden ist

Viele Grüße
Lars

01.03.2015 - 14:43 Uhr

Hallo huge,

falls Du es übersehen haben solltest,

Wenn ich mir jedoch den Port anschaue, den Du da benutzt.
ist auf dem Rechner womöglich ein Lokaler Proxy Server installiert, der den Port blockiert?

Viele Grüße
Lars

01.03.2015 - 14:40 Uhr

Hallo Peter,

ich befürchte, dass Du nicht drum rum kommen wirst, den kompletten Text zu Parsen.

Zum Parsen könntest Du z.B. Reguläre Ausdrücke verwenden
https://msdn.microsoft.com/de-de/library/system.text.regularexpressions.regex%28v=vs.110%29.aspx

Viele Grüße
Lars

01.03.2015 - 14:03 Uhr

Halllo huge687,

wenn du Dir exception.ToString() anschaust, wird Dir im normalfall auch inner Exception angezeigt.

Mein Tipp wäre, dass Dir entweder die Rechte fehlen, diesen Port zu öffnen oder das die Firewall dein Vorhaben blockiert.

Wenn ich mir jedoch den Port anschaue, den Du da benutzt.
ist auf dem Rechner womöglich ein Lokaler Proxy Server installiert, der den Port blockiert?

Viele Grüße
Lars

28.02.2015 - 14:03 Uhr

Hallo Melvinx71 und Herzlich Willkommen hier im Forum,

ich bin schon sehr verwundert, dass Du mit Google nichts finden konntest

wie wäre es mit https://msdn.microsoft.com/de-de/library/system.io.filestream%28v=vs.110%29.aspx

vermutllich wäre es für dein Vorhaben besser, wenn Du keine Text Datei benutzt, sondern entweder eine XML Datei oder eine Datenbank

Viele Grüße
Lars

28.02.2015 - 13:22 Uhr

Hmm, ich kenne so ein Verhalten eigentlich nur, wenn ich ein Fehler habe und mit F5 die Anwendung starte
und in der Konfiguration unter

Projekte und Projektmappen => Erstellen Ausführen

bei 'Beim Ausführen, bei Buildfehler...' "Alte Version starten" eingestellt ist

-- Hast Du schon einmal in die Fehlerliste reingeschaut
-- Das Projekt bereinigt (also alles gelöscht) und dann neu erstellt
-- oder absichtlich mal ein ';' vergessen und gestartet

Viele Grüße
Lars

28.02.2015 - 10:50 Uhr

Hallo Buwwel und Herzlich Willkommen,

spntan würde ich sagen, dass deine Anwendung nicht Kompiliert wurde.

Versuche doch bitte einmal die Anwendung, mit neu zu erstellen!

hast Du den Designer benutzt, um deine neuen Elemente hinzuzufügen oder hast Du es manuell im Code gemacht?

Viele Grüße
Lars

27.02.2015 - 16:49 Uhr

Halllo bra10,

Du könntest das ganze einfach an das Window hängen, die Frage wäre dann nur welche anklickbaren Elemente Du verwenden möchtest.

Denn wenn Du zb einen Button oder eine Textbox hast, würde dieses Event von dem jeweiligen Element selber behandelt werden und nicht von deinem Fenster.

Viele Grüße
Lars

27.02.2015 - 12:11 Uhr

Hallo Tastimur,

warum bindest Du denn den CommandParameter, an das Property SelectedItem von der ListView

ein Binding auf den aktuellen Row DataContext, wäre für Dich doch eigentlich das Richtige.
So würdest Du im Parameter, auch das Objekt bekommen welches die aktuelle Zeile Repräsentiert.


CommandParameter="{Binding Path=.}"

Viele Grüße
Lars

27.02.2015 - 11:45 Uhr

Hallo Leute,

myCSharp.de wird Erwachsen, dass ist ein Schritt in die richtige Richtung.

Ich denke zwar, dass dies nicht im Sinne der Ehemaligen ist, jedoch ich begrüße diesen Schritt.

Viele Grüße
Lars

17.02.2015 - 22:34 Uhr

Hallo s4rge,

ok, was möchtest Du denn für einen Output haben, ich denke wenn wir das wissen können wir auch weiterhelfen

Viele Grüße
Lars

22.01.2015 - 22:48 Uhr

hallo iceget,

wenn du wirklich keinerlei Informationen über die DB oder ein mögliches Format hast,
dann bedeutet das ein wenig manuelle Arbeit.

Deine Aufgabe wird dann sein, das mögliche Format aus der Datei ab zuleiten.
Entweder anhand von den vorhanden Daten in der Datei und den im Programm angezeigten Daten.

Oder durch erzeugung von neue Einträgen und einer nachgelagerten Analysiert der veränderten Datei.

und sobald man meint das alles Versanden zu haben,
dreht man den Spiess um und ändert die Datei manuell und überprüft die eigenen änderungen mit dem Programm.

mit den so gesammelten Informationen und einem gescheiten Test Framework, ist dann die Nachimplementation nur noch ein Fleissarbeit.

Viele Grüße
Lars

22.01.2015 - 18:16 Uhr

hallo lutzeslife,

Das es im Slider-Control nicht funktioniert kann eventuell an folgenden liegen:

1.) Gib nicht deinem USerControl, den Namen root, dondern deinem 1. Element (i.d. Fall deinem Grid)

Das Problem ist nämlich sonst, dass der DatenContext deines UserControls überschrieben wird, wenn du es ein Parent bekommt (z.b. wenn du es einem WIndow hinzufügst)

2.) Du kannst das Binding auf den ElementNamen sparen. Gib nur den Path an. Da das Framework automatisch in den DatenContext schaut ob irgendwo die Property liegt (erst im Slider-DatenContext, dann im Grid usw. und im Grid würde es dann gefunden werden)

hmm, ich glaube an dieser Stelle hast du ein kleinigkeit übersehen, denn an dieser Stelle wird nicht über den DataContext auf die jeweiligen Eigenschaften zugegriffen.

Viele Grüße
Lars

22.01.2015 - 12:34 Uhr

hmm, eigentllich gibt es da nichts besonderes zu beachten

ich frage mich nur ob ein UserControl für ein Slider das richtige ist, aber das sollte hier egal sein

zeige doch mal ein wenig mehr von deinem Code, dann können wir Dir bestimmt besser helfen

Viele Grüße
Lars

22.01.2015 - 11:51 Uhr

hallo _Cashisclay,

warum bindest Du die TextBox und den Slider nicht an ein einziges Property ?

Viele Grüße
Lars

14.01.2015 - 10:25 Uhr

Hallo gpc44,

wie wäre es hiermit


var newStr = new Regex(@",|\.").Replace(input, match => match.Value == "." ? "," : ".");

Viele Grüße
Lars

22.08.2014 - 23:19 Uhr

Hallo Andreas T,

kannst Du uns ein wenig mehr über dein Vorhaben erzählen ?

muss die Datei immer wieder erneut generiert werden?

warum mit CodeDom?
spontan würde ich eher auf eine XSLT Transformation oder die Template Engine vom Visual Studio den Code erzeugen.

Viele Grüße
Lars

08.07.2014 - 21:51 Uhr

Hallo Exis,

zum ersten solltest Du Dich einmal ein wenig mehr mit den Funktionalitäten der einzelnen Layout Container beschäftigen.

zum zweiten würde ich Dir Empfehlen den Designer Links liegen zu lassen, denn mit ein wenig Vorstellungskraft und ein wenig Übung bist Du um einiges schneller wenn du den XAML Code direkt schreibst.

Viele Grüße
Lars Schmitt

02.06.2014 - 18:06 Uhr

Hallo M@TUK,

In einem Nuget Packet kannst du nicht nur dlls einbinden, es könnten auch zusätzlich Views, css oder js Komponenten integriert sein, die beim Installieren des jeweiligen Packetes auch in bestimmte Unterordnen gepackt werden. Und wenn dir die native Möglichkeiten von Nugget nicht reichen sollten kann zuguterletzt immer noch eine ps Datei eingebunden werden, die die Installation für dich übernimmt.

Allerdings würde ich die Plugins nicht in das Bin Directory rein packen, sondern eher in einem unterordnen Namens Plugins.

Natürlich musst du dich dann auch selber, um das Laden und registrieren der jeweiligen dll kümmern

Für die ganzen anderen Dateien, könnte man den Ordner Areas verwenden
Areas in ASP.NET MVC 4

Viele Grüße
Lars

01.06.2014 - 17:15 Uhr

das sieht aber sehr unübersichtlich aus, versuche doch einmal das ganze ein wenig mehr in verschiedenen schichten aufzutrennen.

Auch aufgrund, deiner möglichen Weiterentwicklung in Richtung einer Windows Forms GUI würde eine auftrennung in verschiedenen Schichten sinn ergeben.
Wenn du jetzt nicht an die Trennung denkst, würdest du das komplette Programm noch einmal erneut entwickeln, sobald du deine GUI in Windows Forms umsetzt möchtest.

Versuche doch einmal dein Programm in die drei typischen Bereiche aufzuteilen

  • Datenzugriff ... auch wenn aktuell noch keine Speicherung stattfindet
  • Businesslogik ... die reine Logik deines Programms
  • View ... deinen jeweilige Schnittstelle zum Benutzer des Programms

Für jede Schicht hast Du mindestens eine Klasse und die Main Methode würde das ganze eigentlich nur starten.

Zusätzlich finde ich das ganze auch ein wenig zu statisch
Ich weiß, dass sich dies jetzt ein wenig kreiert anhört, aber stell dir mal vor
in der Bundesliga dürften Plötzlich 20 statt 18 Vereine dran teilnehmen
oder Du möchtest die Menüpunkt Speichern und Laden einführen.

An wie vielen stellen müsstest du bei diesen eigentlich recht kleinen Änderungen deinen Code ändern.

UND ZUGUTERLETZT BITTE KEIN GOTO BENUTZEN, da dies nicht gerade die Lesbarkeit des Codes verbessert

Viele Grüße
Lars

01.06.2014 - 14:59 Uhr

Hallo Machiavelli und herzlich willkommen hier im Forum,

Wie es auf den ersten blick scheint, sollte das ganze sich sehr leicht entwicklen lassen, jedoch würde ich an deiner stelle die speichern Funktion ebenfalls implementieren. Zur not kannst ja auch eine CSV oder XML Datei zum speichern nehmen, das macht ganze nicht unbedingt komplizierter.

Viele Grüße
Lars

31.05.2014 - 22:37 Uhr

Normalerweise würdest bei den async Methoden nicht List<T> sondern eher Task<List<T>> zurück bekommen,

Jedoch bei dir scheint es eher so zu sein, dass du gar nichts also void zurückbekommst, aufgrund der Informationen die dir deine IDE anzeigt, solltest du darauf aber auch selber kommen können.

Viele Grüße
Lars

31.05.2014 - 20:35 Uhr

Hallo Chazon,

Entweder nimmst du die Methode die nicht asynchron läuft also ohne async am ende oder du benutzt die async Methode welche auch klar die bessere Wahl ist.

Bei dieser Async Methode kommt die neue async await Symptomatik zu tragen.

Asynchrone Programmierung mit Async und Await (C# und Visual Basic)

Viele Grüße
Lars

27.05.2014 - 09:44 Uhr

Hallo lecoeur,

warum willst Du das VS mit MySQL verbinden?

falls Du ein Frontend für deine DB brauchst nutze phpMyAdmin der Sollte beim Xamp mit Installiert worden sein.

für dein Programm Emfpehle ich Dir
25.2.3.1. MySQL-Verbindung mit Connector/NET

Viele Grüße
Lars

21.05.2014 - 21:01 Uhr

Hallo baer999,

entweder verstehe ich deinen Post nicht oder das ganze ist nicht so schwierig wie Du vermutet hast.

Probiere doch mal


select User.*,  group_concat(Telefon.TelNr SEPARATOR  '\r\n') ......

Viele Grüße
Lars

21.05.2014 - 16:47 Uhr

Es scheint wirklich ein Binding Fehler zu sein,

Denn auf ein Property im Code Behind kannst du vom Fenster, erst einmal nicht zugreifen solange du nicht den Datacontext vom Fenster versorgst

Bisher kann ich Dir sagen, das es aktuell nicht so aussehen wird wie Du es möchtest .

Zusätzlich Empfehle ich Dir für WPF, das MVVM Pattern anzuwenden.

Viele Grüße
Lars

21.05.2014 - 08:01 Uhr

Hallo thebadgrandma,

eigentlich ist es ziemlich genau definiert was bei einer Objectnamens Änderung im VS passiert und es ist kein Bug, dass der Eventhandler nicht verändert wird.

VS: Umgestaltung durch Umbenennen (C#)

Viele Grüße
Lars

21.05.2014 - 07:26 Uhr

Hallo Z7CT3N,

Die Listview würde ich für diese Visualisierung nicht nehmen, da du beim Listview per Default die spalten Header hast, um dieses zu realisieren wäre eher eine ListBox mit einem passenden ItemTemplate geeignet.

tip
bei der ListView musst du den Horizontalen ScrollViewer deaktivieren

Viele Grüße
Lars

20.05.2014 - 22:48 Uhr

Hamm, im MySQL Umfeld habe ich bisher über einen solchen Trigger noch nichts gehört, ich könnte mir ein Workaround vorstellen diese Möglichkeit auch mit MySQL zu realisieren, jedoch der MSSQL bietet diese Funktion von Haus aus.

Wenn du das ganze jetzt noch, als Client Server Architektur umsetzt wäre es sie perfekte Lösung.

Dann könntest du auch einen MySQL Server einsetzten und das Informieren der Clients macht der Server.

Viele Grüße
Lars

20.05.2014 - 22:19 Uhr

Ja, genau das wäre meine Idee gewesen, aber genau das hätte wieder zur folge, dass Du wieder mehrfach in eine DB schreiben müsstest, es sei denn das der sync dienst eine weitere DB füllen würde, und diese DB nur zum auslesen genützt wird.

Natürlich muss ich meinem Vorredner recht geben, das eine Portierung auf eine andere DB auf jeden Fall der beste und auch einzig Richtige Weg wäre, jedoch kann ich auch deine Seite sehr gut verstehen, manchmal müsse einfach schnell Lösungen her.(auch wenn diese Variante schmutzig ist )

Nur man sollte immer bedenken, solche schmutzigen Wege bereiten in Zukunft sehr oft Probleme und viel mehr Arbeit als es sauber zu realisieren.

Viele Grüße
Lars

20.05.2014 - 21:03 Uhr

Halo Matthias,

Ohne genauer Informationen zu haben, könnte ich mir verschiedenen Ansätze vorstellen.

Die Kommunikation könntest du zb mittels Wcf, Named Pipes oder auch Tcp Realisieren, ich würde jedoch eine der ersten beiden Varianten bevorzugen.

Theoretisch könnte die Satelliten Anwendung auch mittels Wcf, mit der Mutter Anwendung kommunizieren und sich von Ihr die Daten geben lassen und auch wieder zurück in die Datenbank schreiben.

Ich denke jedoch, dass das für deine Anwendung zu viel Aufwands bedeutet und einer Neuentwicklung gleich kommt.

Je nach gemachten Änderung wäre möglicherweise auch eine Synchronisation der beiden Datenbanken möglich und leicht realisierbar.

Oder du realisiert eine Lock Tabelle, in die Satelliten Anwendung reinschreibt wenn Sie gestartet wird und den Eintrag beim beenden wieder Entfernt.
Die Mutter Anwendung, prüft in regelmäßigen Abständen einfach diese Tabelle und behandelst es entsprechend.

Viele Grüße
Lars

19.05.2014 - 16:45 Uhr

Hallo ismirschlecht,

Ich kann dir nur empfehlen das du das jeweilige Fenster ordentlich neu erstellst, gerade weil es ein Projekt ist, dass nicht von Dir ist, du es aber weiterentwickeln musst.

Die Zeit die jetzt darauf verwendest, wirstdu im laufe der zeit wieder einsparen.

Lars

12.05.2014 - 21:43 Uhr

Hallo Brainwave,

die Lösung wurde ja schon gepostet, aber meiner Meinung nach solltest Du lieber den Normalen für alle Benutzer bekannten Weg gehst und ein richtiges Menü in deine Anwendung Integrierst.

warum sollte man solche Einträge in dem Menü verstecken und damit den Benutzer verwirren.

Viele Grüße
Lars

12.05.2014 - 18:08 Uhr

Hallo Stefan,

Um dieses zu realisieren, benutzt man normalerweise das Event CanExecuteChanged

Viele Grüße
Lars

05.05.2014 - 17:15 Uhr

Hallo Gongo88,

Das Model wird zwar aus der Datenbank gefüllt, jedoch das ist auch das einzigste, denn das Model in der Applikation kann durchaus unterschiedlich sein.

Die Frage ist ja auch, wie du die Daten aus der DB bekommst

Viele Grüße
Lars

03.05.2014 - 21:04 Uhr

Hallo Plasma,

Richtig je nach Programm Architektur hättest du ein Layer der alle Textboxen in zb einem mehrdimensionalen Array hält. Genau in dieser Klasse könnte auch der Click Handler sein und im diesen liest Du die Werte aus und rechts das resultierende mehrdimensionale not Array weiter an den nächsten Layer der für die Lösung des Sodokus verantwortlich ist.

Möglicherweise wäre das ganze auch ein Fall fürs DataBinding, damit könntest Du dir an dieser Stelle vielleicht ein wenig vereinfachen.

Viele Grüße
Lars

03.05.2014 - 19:12 Uhr

Hallo Flackern,

Warum hast Du Textboxen in der Collection?

Die jeweilen Control kommen bestenfalls, aus einem DataTemplate

Viele Grüße
Lars

03.05.2014 - 18:56 Uhr

Hallo Plasma1337,

Hmm bisher ist dein Code aber nicht so 1337, das geht echt noch schöner und einfacher.

Ich denke nicht, dass du die kompletten Control an die Methode übergeben solltest, viel besser wäre nur die Entsprechenden Werte weiterzugeben.

Viele Grüße
Lars