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 m0rius
Thema: [gelöst] Auf- / Abrunden auf volle 40
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo SlyFox,

Zitat von SlyFox
Round rundet kaufmännisch, Abs rundet ab.
das stimmt so nicht. Math.Round() kann auch mathematisch runden, wenn MidpointRounding.ToEven gesetzt ist. Math.Abs() rundet gar nicht, sondern gibt den Betrag der übergebenen Zahl zurück, wobei "Abs" für "Absolutwert" steht.

m0rius

Thema: ASP.Net MVC Datenbankanbindung
Am im Forum: Web-Technologien

Hallo Kaji,

hast du dir das Tutorial bzw. den Quellcode mal angesehen? Dort wird gezeigt, wie beispielsweise das Entity Framework als Datentechnologie integriert wird.

m0rius

Thema: Mail Client starten
Am im Forum: Office-Technologien

Hallo Junior,

in meinem Projekt YASST - Yet Another Screenshot Tool verwende ich in der Datei SendFileTo.cs die Klasse MAPI, die ich damals irgendwo im Netz gefunden habe. Diese Klasse macht genau das, was du suchst: Sie öffent den Standard-E-Mail-Client mit festgelegten Anlagen. Lade dir am besten das Archiv YASST.rar runter und sie dir die Klasse bzw. die Verwendung an.

m0rius

Thema: ASP.Net MVC Datenbankanbindung
Am im Forum: Web-Technologien

Hallo Kaji,

LINQ to SQL oder das Entity Framework mit LINQ to Entities sind gängige Varianten. Das NerdDinner-Tutorial bietet einen tollen Einstieg in ASP.NET MVC und verwendet in der Tutorial-Version MVC 1 mit LINQ to SQL. Auf der CodePlex-Seite von NerdDinner gibt es das Projekt auch für MVC 2 zum Download, das LINQ to Entities einsetzt.

m0rius

[edit]CodePlex-Link ergänzt[/edit]

Thema: Visual C#: einzelne Klasse kompilieren
Am im Forum: GUI: Windows-Forms

Hallo shark95,

bitte beachte vorsorglich [Hinweis] Wie poste ich richtig? Punkt 1.1.1, das sind absolute Grundlagen.

Standardmäßig wird nicht die Program.cs gestartet, sondern die im Projekt — in der Program.cs enthaltene — Main()-Methode ausgeführt.

m0rius

Thema: double[]-Array diskretisieren
Am im Forum: Rund um die Programmierung

Hallo zommi,

hierfür hat sich deine Mühe gelohnt: NAverage: Extended mean calculation functionality for .NET

m0rius

Thema: In einer Liste prüfen, ob noch ein weiteres Element vorhanden ist
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo danjou,

s. List<T> statt ArrayList?.

Zitat von JAck30lena
Seit .Net 2.0 verwendet man keine Arraylist mehr, da es nun die generische Liste 'List<T>' gibt. Die generische 'List<T>' bietet nicht nur performancevorteile, sondern auch typsicherheit. Bitte schau mal in der MSDN nach 'List<T>' um ein beispiel und dessen verwendung zu finden. Man macht sich auch beim Programmieren das leben leichter wenn man die 'List<T>' verwendet.

m0rius

Thema: NAverage: Extended mean calculation functionality for .NET
Am im Forum: .NET-Komponenten und C#-Snippets

... und der Quellcode des Projektes.

Thema: NAverage: Extended mean calculation functionality for .NET
Am im Forum: .NET-Komponenten und C#-Snippets

Hier die DLL ...

Thema: NAverage: Extended mean calculation functionality for .NET
Am im Forum: .NET-Komponenten und C#-Snippets

Hallo liebe Community!

Die Klassenbibliothek [TT]NAverage[/TT] bietet diverse Methoden zur Berechnung von Mittelwerten an. Mit LINQ hat die Erweiterungsmethode [TT]Enumerable.Average()[/TT] in das .NET-Framework Einzug gefunden, die das arithmetische Mittel einer numerischen Collection berechnet. Weitere Mittelwertsberechnungsmöglichkeiten fehlen jedoch und sollen durch diese Komponente ergänzt werden.

Zur Zeit wird die Berechnung folgender Mittelwerte unterstützt:

In den weiteren Beiträgen findet ihr die bereits kompilierte DLL sowie den Quelltext des Projektes. Hier habe ich die Methodensignaturen der statischen Klasse AverageExtensions angehängt, die sowohl Erweiterungsmethoden als auch statische Methoden zur Mittelwertsberechnung zur Verfügung stellt.

m0rius

P.S: Vielen Dank an zommi für seine Hilfe bei der Implementierung der Funktionalität zur Berechnung des Modus bzw. der Modi!

Schlagwörter: NAverage, Average, Mean, Mittelwert, Mittel, Durchschnitt, Avg, Arithmetic, Arithmetisches, Geometric, Geometrisches, Arithmetic-Geometric, Arithmetisch-Geometrisches, Harmonic, Harmonisches, Quadratic, Quadratisches, Truncated, Trunkiertes, Winsorized, Winsorisiertes, Median, Mode, Modusk, Modes, Modi, Midrange, Spannweitenmitte

Thema: Complementär Farbe ermitteln
Am im Forum: Grafik und Sound

Hallo inflames2k,

verwende den HSV-Farbraum und setze H auf (H + 180) % 180. Dadurch gehst du den halben Farbkreis, der Farbhöhen von 0° bis 360° beschreibt, weiter und landest gegenüber bei der Komplementärfarbe.
gfoidl hat hier im Forum ein tolles Snippet zur Konvertierung zwischen (u.a.) den Farbräumen RGB und HSV veröffentlicht: Farbkonvertierung RGB <-> HSV und RGB <-> CIE-Lab

Hier ein Auszug aus einem älteren Projekt XColor von mir:

using System.Drawing;
using XColor.Model;

namespace XColor.Business
{
    /// <summary>
    /// Represents a color filter that converts a given color to its complementary one.
    /// </summary>
    public class ComplementaryFilter : IColorFilter
    {
        /// <summary>
        /// Applies the filter to the specified color.
        /// </summary>
        /// <param name="rgbColor">The specified color.</param>
        /// <returns>The resulting complementary color.</returns>
        public RgbColor Apply(RgbColor rgbColor)
        {
            HsvColor hsvColor = (HsvColor)rgbColor;
            HsvColor complementaryColor = new HsvColor((hsvColor.H + 180) % 360, hsvColor.S, hsvColor.V);
            
            return complementaryColor;
        }
    }
}

m0rius

Thema: DataGridView o h n e leeere Ränder
Am im Forum: GUI: Windows-Forms

Hallo Computer_Matz,

häng doch mal einen Screenshot von der derzeitigen Anzeige an.

m0rius

Thema: [WPF] Menü Shortcuts
Am im Forum: GUI: WPF und XAML

Hallo Sebastian1989101,

folgendes Video-Tutorial sollte dir helfen: How Do I: Create a Custom Command in WPF.

m0rius

Thema: Dynamic CSS Gen
Am im Forum: Web-Technologien

Hallo sakanoue,

ich würde das gar nicht so kompliziert machen: Ersetze einfach im CSS-Stylesheet die Farbangaben durch Platzhalter (à la [background_light]) und tausche diese dann gegen die Farbrepräsentationen (z.B. #fefefe) aus.

m0rius

Thema: ASP.NET Webhoster
Am im Forum: Web-Technologien

Hallo JAck30lena,

das Thema hatten wir vor kurzem hier: Hat jemand Erfahrungen mit dem ASP.NET-Hoster servMAX?

m0rius

Thema: Welchen Clean Code Developer Grad habt ihr?
Am im Forum: Smalltalk

Hallo herbivore,

das sehe ich genau wie du: Natürlich sollen auch die vorhergehenden Regeln - wie z.B. die Verwendung eines Versionskontrollsystems (das seinen natürlich verlieren würde, wenn es nur 1/6 der Zeit eingesetzt werden würde) - beachtet werden, allerdings soll der Lern- und Reflektierfokus auf den jeweiligen Prinzipien liegen.

Zitat von cleancodedeveloper
Wem das dennoch nicht schmeckt, der kann die "bunten Grade" auch in beliebiger Reihenfolge wiederholen. Er kann sich für einen gewissen Zeitraum vornehmen, seine Aufmerksamkeit auf die Aspekte irgendeines Grades zu wenden.
Mich würde ebenfalls gfoidls Frage interessieren, ob du selbst direkt das Grade-System durchläufst!


Hallo gfoidl,
Zitat von gfoidl
Für ein Wertesystem wäre auch die Angabe der Anzahl der Gesamt-Iterationen womöglich noch interessant
genau diese Angabe der Gesamtiterationen gibt es eben (bewusst) nicht.
Zitat von cleancodedeveloper
Es gibt kein Prinzip, keine Regel, keine Praktik, die nicht davon profitieren würde, sich ihr in wiederholten Durchläufen des Gradesystems nocheinmal zu widmen.
Zitat von cleancodedeveloper
Wer glaubt, am Ende angekommen zu sein oder überhaupt ankommen zu können, der erliegt einer Illusion.

m0rius

Thema: Welchen Clean Code Developer Grad habt ihr?
Am im Forum: Smalltalk

Hallo frisch,

Zitat von frisch
Im Orangen grad musst du dann die Konventionen vom Roten und Orangen Grad einhalten.
das ist so nicht richtig, soweit ich das verstanden habe. Während eines Grades (außer weiß) geht es darum, sich ganz bewusst den jeweiligen Themen zuzuwenden. Im weißem Grad, dem letzten einer Iteration, geht es dann darum, die Inhalte aller Grade bewusst zu verwenden. Anschließend soll zur Vertiefung der jeweiligen Inhalte wieder von vorne begonnen werden.

m0rius

Thema: Humor: Java Programmierer ... und andere lustige Sachen
Am im Forum: Smalltalk

Hallo,

und noch ein Zitat aus einem StackOverflow-Thread mit der Frage "What are, in your opinion, the worst subjects of widespread ignorance amongst programmers?" (vor allen Dingen der von mir fettgedruckte Teil):

Zitat von stormianrootsolver
Using Java.

You can't imagine how much I hate software written in Java. Clumsy looking GUIs with tons of display bugs, the resource hogging "java automatic updater"...

Second worst pet peeve:

Using anything else than C# / F#. There is no justification, except in extreme cases (OS development or when you need to talk to the CPU directly to use SIMD). And then - only write as little as possible in unmanaged horrorlanguages from hell (C++, etc... choke) or, even worse, "dynamically typed languages" which are nothing but toys for masochists who hate understanding code and helpful tools like Intellisense.

Third worst pet peeve:

Unneccessary P/Invoke...

m0rius

Thema: Humor: Java Programmierer ... und andere lustige Sachen
Am im Forum: Smalltalk

Hallo,

habe gerade diesen Thread auf StackOverflow gefunden ... Zu gut :-)

Zitat von Keith Bostic
Perl - The only language that looks the same before and after RSA encryption.
Zitat von Hofstadters Law
It always takes longer than you expect, even when you take into account Hofstadter's Law.
[...]

m0rius

Thema: Coding Styles Horror
Am im Forum: Smalltalk

Hallo,

ich hätte jetzt auf ein if statt auf ein while und auf == statt = getippt ...

m0rius

Thema: UnterPunkt eines Menu Strips erstellen
Am im Forum: GUI: Windows-Forms

Hallo Attix22,

bitte beachte vorsorglich [Hinweis] Wie poste ich richtig? Punkt 1.1.1, das sind absolute Grundlagen.

Wenn du die Variable hardwareToolStripMenuItem selbst definierst, musst du bei der Deklaration den Datentyp angeben:

System.Windows.Forms.ToolStripMenuItem unterpunktToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
Schöner finde ich allerdings die Verwendung von using-Direktiven:

using System.Windows.Forms;
Bei der Zuweisung, beispielsweise im Konstruktor der Klasse, reicht dann folgendes:

ToolStripMenuItem unterpunktToolStripMenuItem = new ToolStripMenuItem();

m0rius

Thema: UnterPunkt eines Menu Strips erstellen
Am im Forum: GUI: Windows-Forms

Hallo Attix22,

da kannst du dir ganz leicht selbst abhelfen — schau dir mal den vom Designer für "Hardware" generierten Code an!

m0rius

Thema: Was ist schneller: Math.Abs(a)<b vs. a<b && a>-b
Am im Forum: Rund um die Programmierung

Hallo,

ein schönes Schlusswort: The Sad Tragedy of Micro-Optimization Theater

Zitat von Jeff Atwood
It. Just. Doesn't. Matter!

m0rius

Thema: webseite für tanzschule
Am im Forum: Web-Technologien

Hallo multitrust,

wie JAck30lena schon gesagt hat — bis auf die Smartphone-Synchronisierung sind das absolute Standard-Anforderungen. Erfinde das Rad nicht neu und verwende ein fertiges CMS wie beispielsweise Joomla oder Typo3 (beide laufen auf PHP-Basis).

m0rius

Thema: double[]-Array diskretisieren
Am im Forum: Rund um die Programmierung

Hallo zommi,

vielen Dank für deine Implementierung und den Code, da arbeite ich mich mal in Ruhe durch :).

m0rius

Thema: Statische und Listenelemente in XML (De-)Serialisieren
Am im Forum: Datentechnologien

Hallo STF-DIR,

lies dir mal folgende Diskussion durch: How do I do XML serialization of classes with static properties in C#?

Zitat von Xiaoyun Li - MSFT
Please follow these steps to do XML serialization of classes with static properties:
  1. Let the class with static properties implement ISerializable, and set the class as Serializable.
  2. Implement the function GetObjectData.
  3. Create a new constructor function with the same structure as GetObjectData function.
  4. During serialization, the class actually calls GetObjectData. During deserialization time, the class calls the corresponding constructor to create the instance.

m0rius

Thema: double[]-Array diskretisieren
Am im Forum: Rund um die Programmierung

Hallo,

für eine Bibliothek, die die Berechnung verschiedener Mittelwerte unterstützt, soll auch der Modus implementiert werden. Für Ganzzahlen ist das ja kein Problem: {1, 2, 4, 2, 3, 4, 2, 4} hat die Modi 2 und 4 (beide sind 3 Mal enthalten), {1, 2, 3, 2, 4} hat den Modus 2 (2 Mal enthalten).

Soll nun der Modus vieler double-Werte emittelt werden, macht dies in vielen Situationen nur Sinn, wenn eine gewisse Abweichung zugelassen wird. So soll beispielsweise der Modus von {0.050001, 0.05, 0.049999, 0.08, 0.09} mit einem erlaubten Abweichungswert Epsilon von 0.001 gleich 0.05 sein, weil die ersten drei Werte als gleich anzusehen sind und damit das häufigste Vorkommen aufweisen.

Allerdings führt auch der pragmatische Ansatz (Iteration + Kopie in 2. Liste) nicht zwangsläufig zum gewünschten Ergebnis: So würde 0.050001 als neuer Wert mit der Anzahl der Vorkommen = 1 der neuen Liste hinzugefügt werden. Die folgenden Werte 0.05 und 0.049999 würden wegen der Toleranz nicht hinzugefügt werden, sondern das Vorkommen auf 3 erhöhen. Letzten Endes ist aber nicht zwangsläufig der zuerst (und einzig) eingetragene Wert 0.050001 der Modus, sondern eben 0.05 als arithmetisches Mittel (meiner Ansicht nach ist das eine sinnvolle Definition) der 3 als gleich anzusehenden Werte.

m0rius

Thema: double[]-Array diskretisieren
Am im Forum: Rund um die Programmierung

Hallo,

zur Bestimmung des Modus eines double[]-Arrays habe ich eine Methode mit folgender Signatur geschrieben:

public static double[] Modes(this IEnumerable<double> numbers, double discretizationEpsilon)
Um sinnvoll den Modus bzw. die Modi der Werte ermitteln zu können, muss das Array zuerst diskretisiert werden. (Der zweite Parameter der Methode gibt dabei die maximal zulässige Differenz zweier Werte an, um diese als gleich zu betrachten.)
Gibt es eine einfachere, elegantere Möglichkeit, das Array zu diskretisieren, als über alle Elemente zu iterieren und diese in eine zweite Liste zu kopieren, sofern dort nicht schon ein Element mit einer kleineren Abweichung als discretizationEpsilon enthalten ist?

m0rius

Thema: Konsolenanwendung-> Vollbild?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo GiantClients,

das ist der Code von der Seite Maximize Console Window:

[DllImport("kernel32.dll")]
private static extern IntPtr GetStdHandle(int handle);
[DllImport("kernel32.dll")]
private static extern bool SetConsoleDisplayMode(IntPtr hConsole, int mode);
 
IntPtr hConsole = GetStdHandle(-11);   // get console handle
SetConsoleDisplayMode(hConsole, 1);    // make console fullscreen
Den Objektverweis erhältst du aus der vorletzten Zeile. Die ist ja auch mit "get console handle" auskommentiert.

Bitte beachte vorsorglich [Hinweis] Wie poste ich richtig? Punkt 1.1.1 und [Hinweis] Syntaxfehler selbst lösen (Compilerfehlermeldungen).

m0rius

Thema: Konsolenanwendung-> Vollbild?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo GiantClients,

die gleiche Diskussion hatten wir heute schonmal hier: Konsolen Fenster maximieren?

Zitat von m0rius
siehe Maximize Console Window (1. Bing-Suchergebnis "C# maximize console window").

m0rius