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 LatinChriz
Thema: [Gelöst] Trennung von WPF Element von seinem Parent
Am im Forum: GUI: WPF und XAML

<Setter.Value>
    <TextBlock Text="{Binding Name}" />
</Setter.Value>


Das ist dein Problem! Damit erzeugst du einen (!) TextBlock der für alle Header verwendet werden soll, das geht mit einem Datensatz noch gut, spätestens der Zweite verursacht aber deine genannte Exception.

Deswegen gibt es den DataTemplate Knote. Denn ein DataTemplate dient als reine Factory des Baumes der darin enthalten ist. Richtig müsstest du also nicht die "Header" Eigenschaft mit deinem Style ändern, sondern die "HeaderTemplate" Eigenschaft! Anschließend den TextBlock in ein DataTemplate packen und... voila! :-)

Thema: Hololens - Möglichkeiten in der Zukunft
Am im Forum: Smalltalk

Als Entwicklerkonferenz fand ich das Anmeldesystem einfach nur schlecht. Macht ja Microsoft nicht direkt sondern "eventcore".
Das System brach unter der Last einfach schön weg - nix mit automatischer Skalierung :-).

Ich hab ein Ticket ergattern können, hat mich aber knappe 25 Minuten gekostet bis ich durch vier (!) Seiten bin
(Stammdaten, sinnlose Umfrage, ev. Hotelbuchung die ich übersprungen habe und anschließend der geliebte Zahlungsprozess).

Unter Betrachtung von diesen Umständen erstaunt mich der "Hype" um die "schnell" ausverkaufte BUILD :-).

Alles in allem ist es natürlich eine künstliche Deckelung der Anzahl von Tickets.
Die letzten 2 Jahre bin ich auch auf der Warteliste gewesen, aber immer noch ein paar Wochen später "zugelassen" worden (wie so alle die ich kenne die auf der Warteliste sind/waren).

Thema: ASP .NET MVC Einstieg
Am im Forum: Web-Technologien

Genau zu so einer "Grüze" wird das gesamte dann aber...
Wenn niemand im Team nur zur hälfte in der Thematik steckt, bastelt irgendwer mal eben nen Prototypen der sich später "Produkt"
nennt und den man bereits ein halbes Jahr später nicht mehr angreifen möchte da es an jeder Ecke nur so "scheppert".

Da fehlt es an einigem fundamentalen Know-How im Bezug auf die Webentwicklung und das Verständnis von vielen Grundkonzepten in der "modernen Entwicklung".
Wir sprechen heute nicht mehr von statischen Websites die man mal eben bunt zusammenklickt. Auch bringt es nichts einfach mal 10 Fremdprojekte runterzuladen und einzubinden,
da dadurch die Anwendung nicht besser wird - es braucht ein Verständnis dafür wie die Dinge funktionieren und wie sie auch harmonieren.

Das traurige an der Geschichte:
Am Ende steht ihr als Entwickler auch noch Gerade wenn etwas nicht funktioniert.

Thema: ASP .NET MVC Einstieg
Am im Forum: Web-Technologien

Das soll bei Gott keine Eigenwerbung sein, aber gerade in so einem Fall, dass die Zeit drängt und es an einer "Technologie" scheitert, rate dazu sich jemanden ins Office zu holen der das Team einerseits schult und anfänglich begleitet.
Genau da kann man seine Fragen gezielt anbringen und sich die Tipps holen die einem die anfänglichen Hürden aus den Weg räumt.

Thema: Elemente dynamisch hinzufügen + virtualisierung
Am im Forum: GUI: WPF und XAML

Dann sind wir doch wieder bei dem Thema wo ich anfangs dachte wo du hinwillst?
Du wirst dennoch die "Datenliste" benötigen mit den 30000 Elementen - das kann dir auch egal sein du musst dich eben um die performante "Zeichnerei" der Elemente kümmern.

Das wäre dann ein VirtualiazingCanvas in dem Falle einfach?
Darüber haben sich schon Leute gedanken gemacht:
WPF Performance and .NET Framework Client Profile

Oder versteh ich dich nun wieder falsch?
Weil dann ist dein ItemsPanel kein "normales" Canvas sondern eben ein VirtualizingCanvas.

Thema: Vergleichsoperatoren von Enum überladen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Finde das irgendwie eigenartig was du vorhast aber soll nichts geben was nicht irgendwer braucht :-)
Comparison operator overloading

*ARGH*: Vollkommen richtig - funktioniert ja nicht weils ein enum ist *shameonme*

Thema: MEF und Events
Am im Forum: Rund um die Programmierung

Du kannst dir auch eine Property bauen die eine Action/Func entgegennimmt?
Also im Grunde ein delegate und dort kannst du dann deine jeweilige Methode zuweisen.

Aber ich würde an deiner Stelle nochmal kurz einen Schritt zurückgehen und nochmal auf das Ganze sehen da ich glaube das kannst du einfacher lösen.

Du willst benachrichtigt werden wenn die SMS verschickt worden ist, da würde es sich auch anbieten das per async/await zu machen dh. ein Task?


Ansonsten bau dir die Klasse doch einfach so dass du den EventHandler in der implementierung hältst ?


private event EventHandler<PluginSystem.Host.ISMSVersandErfolgreichEventArgs> _myEvent;

event EventHandler<PluginSystem.Host.ISMSVersandErfolgreichEventArgs> PluginSystem.Host.ISMSVerschicken.SendenErfolgreich
{
            add { _myEvent += value; }
            remove { _myEvent -= value; }
}

Thema: 1&1 Basic Windows Paket: Erfahrung mit ASP.NET AJAX Support
Am im Forum: Smalltalk


Offtopic: Ich find das irgendwie typisch Europa oder? Cloud? Oh nein auf keinen Fall! NSA, Datensicherheit usw. aber dem Hoster "ums Eck" der verglichen mit den Cloudanbietern winzig ist, dem vertraut man.

Merksatz: WENN die NSA deine Daten haben möchte, dann bekommt sie sie auch, egal wo sie liegen ;-) *imho*

Thema: Framework für Datenbankversionisierung
Am im Forum: Datentechnologien

Dann würde ich sowieso mit Code First arbeiten und mir sogar überlegen ob ihr nicht die Automatic Migrations einschaltet.
Das bedeutet jede Codeänderung am Model führt zu einer Datenbankänderung - sofern dies ohne Datenverlustmöglich ist (kann aber konfiguriert werden).

Dies würde ich aber dann wieder abschalten damit man die Kontrolle über die Migrations hat und dann fortlaufend auch mit manuellen Migrations "Snapshots" vom Design erzeugen und dadurch eine Versionierung einführen.

Thema: Threads werden nicht ausgeführt, Console schliesst sich
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Du musst den Thread auch starten ;-) (--> myThread.Start()).
Weiters solltest du dich etwas in die Basics von Threading einlesen - ein Thread läuft nur solange er auch "beschäftigt" ist.

In dem Code von dir wird die Console auf jeden Fall zugehen, da static void Main() die Hauptmethode ist, und sobald diese abgearbeitet ist, wird die Console geschlossen.

Solange die Threads auch keine BackgroundThreads sind (IsBackground=true) , werden diese den Process sogar noch am Leben erhalten in diesem Falle - ob das gewünscht ist, ist fraglich.

Thema: 1&1 Basic Windows Paket: Erfahrung mit ASP.NET AJAX Support
Am im Forum: Smalltalk

Vollkommen richtig mit der eigenen Domain hört der Spaß dann auf und dann muss man zahlen.
Wenn es aber nur kleinere "spielerein" sind dann reicht die Domain die man von Azure erhält (http://[deinewunschdomain].azurewebsites.net)

Zitat von Abt

...
Und ganz wichtig: Du verwendest nicht ASP.NET, sondern ASP.NET WebForms, das für Datenlastige Anwendungen wie Sharepoint entwickelt wurde. Nicht zu verwechseln mit ASP.NET MVC, das für RIAs ausgerichtet ist und hier generell kein fertiges AjaxToolKit existiert.
...


Wie war das? "One ASP.NET" :-)

Thema: Framework für Datenbankversionisierung
Am im Forum: Datentechnologien

Das Stichwort hierbei wäre: Entity Framework - Migrations

Thema: 1&1 Basic Windows Paket: Erfahrung mit ASP.NET AJAX Support
Am im Forum: Smalltalk

Wenns nur um ein paar kleine Websites geht - dann mach das ganze doch auf nen "System für Männer" und gratis?
Die Cloud Lösung "Microsoft Azure" erlaubt dir bis zu 10 gratis Websites zu hosten und da hast du vollständige Visual Studio Unterstützung auch noch dabei (inkl. remote debuggen usw.).

http://azure.microsoft.com/en-us/develop/net/aspnet/

Thema: Ein kurzes Programm mit FileStream dauert sehr lange bis es terminiert
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Kommentier mal die Consolenausgabe (Alsu nur die Zeile Console.WriteLine(..)) aus - die frisst einen erheblichen Anteil der Zeit auf!

Thema: [WCF] Mehrere Services in einem Endpoint
Am im Forum: Netzwerktechnologien

Zitat von rapisthesolution
...
Das ist der Architektur der darunterliegenden Software geschuldet.
...

Warum dann auf etwas weiter aufbauen, das bereits nicht ganz optimal ist? Warum nicht das ganze wegkapseln damit man eine "sauberere" Architektur hat und auch den Konzepten hinter WCF (bzw. SOA) gerecht wird? Und warum "lieferst"du deine Entities als byte[]-Array aus? Dafür gibt es die Serialisierer in WCF, arbeite doch mit DTOs?

100 Endpunkte sind zwar möglich, aber spätestens der nächste Entwickler wird das selbe Problem haben wie du jetzt:
"Ich muss jetzt etwas machen was nicht im Sinne des Erfinders ist weil meine bestehende Architektur das verlangt..."

Überleg dir auch ob der Client auch wirklich 100 Tabellen einzeln haben möchte oder ob es nicht mehr einen "Context" gibt in dem er arbeitet? Ansonsten schau dir auch mal die WCF-Dataservices an?

Thema: Elemente dynamisch hinzufügen + virtualisierung
Am im Forum: GUI: WPF und XAML

Grundprinzip ist soweit schon richtig, du wirst eine Collection benötigen die du an ein ItemsControl übergibst und diese soll sich um die Darstellung kümmern.

Der Container den du dabei verwenden solltest ist zum Beispiel das eingebaute "VirtualizingStackPanel" im .NET Framework da eben dieses nur die Elemente rendert die im unmittelbaren Bereich sichtbar sind.

Dementsprechend Nutze ein ItemsControl und verwende da ein VirtualizaingStackPanel (siehe hier: Link) dann hast du dein Performanceproblem gelöst.

Thema: WinRT: Kommunikation einer Win8-App mit einem lokalen Dienst (auf x86 System)
Am im Forum: Rund um die Programmierung

Vorausgesetzt es ist wirklich alles nur lokal und bleibt das auch, dann kannst du mit Windows 8.1 Update 1 eine Brokered App schreiben die auf die WPF-Assembly zum Beispiel zugreift und du packst deine App da drauf (LOB Business Apps - .NET Broker App und Windows Store Apps - Einfacher).

Aber "schön" ist was anderes. Wäre es da nicht denkbar "einfacher" du schreibst ein WCF Service das mit deiner "IPC"-Komponente spricht (bzw. integrierst WCF in deine Komponente sofern das möglich ist) und anschließend lässt du WPF als auch deine Windows 8 App mit dem Service sprechen (was übrigens auch wieder IPC ist..). Wäre natürlich alles etwas einfacher abzuschätzen wenn wir hier wüssten in welchen Umfeld du dich bewegst und was deine IPC-Komponente denn ist bzw. wie die Interprozesskommunikation aufgebaut ist - da gibts die verschiedensten Möglichkeiten.

Thema: Coding Styles Horror
Am im Forum: Smalltalk

hmm.... :-/

public string EncodeFilename(string oldString)
        {
            string[] arr = oldString.Split('.');
            int count = arr.Length - 1;

            string newString = HttpContext.Current.Server.HtmlDecode(oldString).ToLower().
                       Replace(arr[count], "").Replace("ä", "ae").Replace("ö", "oe").Replace("ü", "ue").Replace("ß", "ss").
                       Replace(".", "").Replace("&", "").Replace("&amp;", "").Replace("!", "").Replace("'", "").Replace("§", "").
                       Replace("²", "").Replace("³", "").Replace("/", "").Replace(";", "").Replace("*", "").Replace("#", "").
                       Replace(" ", "").Replace("+", "-").Replace("¨", "-").Replace("-", "_") + "." + arr[count].ToString();

            //Ausgabe
            return newString;
        }

Thema: Welche Visual Studio ist das populärste in Firmen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Zitat von Abt
... Aus dem Grund bin ich immer sehr skeptisch über die Legalität einer Version, wenn jemand sagt, er hat Ultimate.
Je nach Firmenstatus (zB Goldpartner von MS) und Vertrag mag das sein, aber nicht als Einzelperson oder kleine Firma....

BizSpark bietet für Startups, für die ersten Drei Jahre ein MSDN Abo gratis an - inkl. VS Ultimate - also kleinen Firmen und Einzelunternehmen glaub ich das relativ schnell :-).

@bredator: Warst schneller :-)

Thema: WPF Fenster aktualisieren
Am im Forum: GUI: WPF und XAML


@Coffeebean: Jap du hast Recht, hab das wohl überlesen, dass Sie sich mit MVVM bereits beschäftigt. Klang für mich nach einer Basic Frage und da werfe ich ungern jemanden sofort MVVM an den Kopf...

Ps. ... du willst nicht wissen welche Firmen ohne MVVM schon wie weit "gekommen" sind :-)

Thema: WPF Fenster aktualisieren
Am im Forum: GUI: WPF und XAML

Ich glaube du solltest dir die Grundlagen von WPF anschauen.
So wie ich das verstehe geht es dir um das Ein/ausblenden von Inhalten in einem Fenster.

Das geht im einfachsten Falle indem du Elementen im XAML einen Namen gibst:

<TextBox Name="tb"/>
und im Code kannst du daraufhin auf die Elemente zugreifen:

tb.Visibility = Visibility.Visible;

Das ist die "einfachste" Variante, aber WPF bietet hierbei ganz andere Konzepte an um solche Szenarien wie von die gewünscht umzusetzen. Schau dir einfach ein paar Tutorials dazu an.

Thema: Acces 2013 C#2012 OLEDB Connection
Am im Forum: Datentechnologien

Kann es an 64Bit (x64) liegen? http://www.altova.com/de/Access-Database-OLEDB-32bit-64bit.html

Thema: 2 DataGrids kontinuierlich aktualisieren
Am im Forum: GUI: WPF und XAML

Also ohne Code können wir hier nun leider nur raten :-) ?

Thema: 2 DataGrids kontinuierlich aktualisieren
Am im Forum: GUI: WPF und XAML

Eine ObservableCollection nimmt jeden Datentyp, da kannst du sogar ein dynamic verwenden (ObservableCollection<T>).

Im Falle, dass es dir gänzlich unbekannt ist, welches Object daherkommt, verwende eine ObservableCollection<object> und das DataGrid verwendet sowieso Reflection um darauf zuzugreifen und die Properties aufzulösen - das kannst du über AutoGenerateColumns steuern.

Thema: 2 DataGrids kontinuierlich aktualisieren
Am im Forum: GUI: WPF und XAML

Ich hab das gerade mal eben "schnell" ausprobiert, und stimmt - bei der Verwendung von RemoveAt knickt die Performace ziemlich ein. Hab hier leider Reflector nicht installiert um reinzuschauen, aber mit ner Quick&Dirty ObservableCollection konnte ich die Performance ohne Probleme halten.

Wobei ich hier das ColectionChanged nur nach der vollständigen Änderung aufrufe, und auch noch genau angebe welche Elemente weg sind.

Thema: 2 DataGrids kontinuierlich aktualisieren
Am im Forum: GUI: WPF und XAML

Von welchen Datenmengen sprichst du denn ? 100 ? 1000 ? 100000 ?
Wie sieht dein XAML dazu aus?
WPF geht auch irgendwann in die Knie bei genügend Daten, es hilft dabei auch auf eine eigenes ObservableCollection zu gehen, die nicht bei jedem neuen Item sofort ein CollectionChanged ausführt.

Thema: C# Task arbeitet sequenziell trotz Async/Await
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Du verwendest async/await hier einfach "etwas" kompliziert und ich glaube du hast noch ein Verständnisproblem?

Besser wäre;



public class DBInsertClient
{
    public Task Routine;
    public CancellationTokenSource AsyncCancelTokenSource = null;

    public async void StartInsertDataBaseRoutine()
    {

                    using (MySqlCommand mySQL_CMD = new MySqlCommand("INSERT ......", Connection))
                    {
                        mySQL_CMD.Parameters.Add("?Value", MySqlDbType.UInt32).Value = 0;
                        await mySQL_CMD.ExecuteNonQueryAsync(AsyncCancelTokenSource.Token);
                    }
                }
    }
}

ADO.NET bietet dir hierbei bereits eine NonQueryAsync an, diese liefert einen Task den du "awaiten" kannst.

Thema: Objekt per Referenz an andere AppDomain übergeben (dort ändern, Änderungen sollen durchschlagen)
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Bzgl. STA und TPL ParallelExtensionsExtras Tour - #5 - StaTaskScheduler

Thema: Bild aus resx-Datei laden - Immer XamlParseException
Am im Forum: GUI: WPF und XAML

War eine kleine google Anfrage ;-)

Accessing image from Resource File in XAML markup

Thema: WPF WebBrowser Control: Ergebnis von Javascript-Aufruf auslesen
Am im Forum: Web-Technologien

Schau dir mal das Projekt Selenium an:
Selenium WebDriver 2.41.0

Kleiner Einstieg ist hie gezeigt:

Stackoverflow