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 Console32
Thema: Auf/Zuklappen von Regions als Shortcut in VisualStudio 2017 gesucht
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Seit VS 2015 gibt es rechts oben das suchfeld Quick Launch (mit CTRL Q). Dannach kannst du einfach Collapse eingeben und siehst welchen shortcut es dafür gibt: Siehe Anhang

Thema: Diskussion zu Coding Styles Horror: Button_Click-Eventhandler
Am im Forum: Basistechnologien und allgemeine .NET-Klassen


Da hast du wahrscheinlich recht :)

Thema: Diskussion zu Coding Styles Horror: Button_Click-Eventhandler
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ich bin der Meinung das die Abhandlung so sehr schlecht ist.

Wenn ich einen button Click handler mit einem "nicht Button Object" aufrufe darf gerne eine Exception kommen. Da die NullRefExceptions immer sehr nichtssagend sind würde ich wahrscheinlich eine ArgumentException mit message werfen.

Wenn der Programmcode in der Methode nur funktioniert wenn ich einen Button übergebe will ich eine Exception wenn ich die Methode falsch verwende ( eine die mir sagt was falsch ist). Wenn die Methode ohne Button Object im sender funktioniert brauch ich auch keine Warning Message Box.

Aus einem Programmierfehler eine klickbare MessageBox zu machen die der User am Ende einfach wegdrückt ohne sie zu lessen finde ich furchtbar. MessageBoxen mit einer Wahl sollten sowieso verboten sein ;)

Thema: (Klassen)architektur mehrerer Windows Forms mit Submenüs/Unterfenstern
Am im Forum: GUI: Windows-Forms

Ich bin ein großer Fan von Single Window Applications, die dem App - Style folgen und immer nur eine Ansicht haben, dafür muss man sich etwas mehr mit dem Inhalt und vor allem mit der Navigation beschäftigen. Wir verwenden auch Caching damit Eingabefenster ohne bedenken während der Arbeit wieder verlassen werden können, usw.

Wir haben vor einem Jahr eine Software umgestellt von sehr vielen stackenden Fenstern auf ein einzelnes (haben ebenfalls auf WPF umgestellt btw). Selbst bei einem Experten Tool wie unserer Software kommt die änderung sehr gut an. Aber wie oben schon angedeutet ist das ganze etwas mehr aufwand.

PS: Wenn WPF auch möglich ist kannst du direkt ein TabControl verwenden und so umstylen das die Tab Header so aussehen wie du willst. (Geht bei WinForms auch ist aber immer deutlich mehr aufwand)

Thema: Alle managed-threads aller Prozesse auflisten
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Wenn du alle Threads von deinem eigenen Prozess haben willst sollte:

System.Diagnostics.Process.GetCurrentProcess().Threads
reichen.

Ansonsten musst du alle beteiligten IPC Prozesse finden. (Mit Process.Get.... )

Thema: WPF - Programmtitel oben links und Logo unten rechts anheften
Am im Forum: GUI: WPF und XAML

Wenn du ein custom Window haben willst würde ich erstmal http://mahapps.com/ versuchen um das gewünschte (oder alternativ einfach ein modernes) custom Window zu bekommen. Wenn man damit nicht zurecht kommt kann man bei Github den Sourcecode durchstöbern und das ganze selbst implementieren (so habe ich es auch gemacht).

P.S. Mit dem NonClient Area zeugst wird hier übrigens nichts gemacht. Würde ich auch nicht empfehlen.

Thema: xaml-Code auslagern
Am im Forum: GUI: WPF und XAML

Ableitung, oder ein Template.

Ich verstehe die Frage nicht ganz: Aus was besteht deine WPF anwendung? Pages oder Windows, Wenn ein teil der application immer gleich aussehen soll wäre es wahrscheinlich besser diesen teil nicht nur einmal zu definieren sondern auch nur einmal zu instanzieren und dann den teil der sich ändert durch ein UserControl oder eine Page zu Setzten. Oder mit hilfe von Frame und Page..

Thema: DataGridTextColumn Header Binding an ViewModel
Am im Forum: GUI: WPF und XAML

An ein ObservableDictionary.

Habe bereits eine lösung gefunden.

<DataGrid ItemsSource="{Binding ErrorRecords}" Background="Transparent" AutoGenerateColumns="False">
            <DataGrid.Columns>
                <DataGridTextColumn Binding="{Binding ErrorNumber}" >
                    <DataGridTextColumn.HeaderTemplate>
                        <DataTemplate>
                            <TextBlock Text="{Binding DataContext.Language[ErrorNumber], RelativeSource={RelativeSource AncestorType=UserControl}}"/>
                        </DataTemplate>
                    </DataGridTextColumn.HeaderTemplate>
                </DataGridTextColumn>

Warum die erste variante im OP nicht funktioniert hat weiß ich nicht.

Thema: DataGridTextColumn Header Binding an ViewModel
Am im Forum: GUI: WPF und XAML

Hallo Community,

Ich versuche gerade die Spalten Titel eines DataGrids an das ViewModel zu binden.
Jedoch funktioniert das ganze nicht richtig.

Nachdem Google sofort einige lösungen ausgespuckt hat, habe ich es noch immer nicht zum laufen bekommen. Hier mal die Lösungen die ich versucht habe:

  <DataGrid ItemsSource="{Binding ErrorRecords}" Background="Transparent" AutoGenerateColumns="False">
            <DataGrid.Columns>
                <DataGridTextColumn Binding="{Binding ErrorNumber}" Header="{Binding Path=DataContext.Language[ErrorNumber], RelativeSource={RelativeSource FindAncestor, AncestorType=UserControl}}"/>
                <DataGridTextColumn Binding="{Binding LastOccurance}" Header="{Binding Path=Language[LastOccurence]}"/>
                <DataGridTextColumn Binding="{Binding ErrorCode}" Header="{Binding Path=DataContext.Language[ErrorCode],ElementName=LayoutRoot}"/>
                <DataGridTextColumn Binding="{Binding ErrorMessage}" Header="{Binding DataContext.Language[ErrorMessage], Source={StaticResource Proxy}}" />
            </DataGrid.Columns>
        </DataGrid>

Und die Binding Errors:
Fehler
System.Windows.Data Error: 2 : Cannot find governing FrameworkElement or FrameworkContentElement for target element. BindingExpression:Path=Language[LastOccurence]; DataItem=null; target element is 'DataGridTextColumn' (HashCode=44175353); target property is 'Header' (type 'Object')
System.Windows.Data Error: 2 : Cannot find governing FrameworkElement or FrameworkContentElement for target element. BindingExpression:Path=DataContext.Language[ErrorCode]; DataItem=null; target element is 'DataGridTextColumn' (HashCode=36366333); target property is 'Header' (type 'Object')
System.Windows.Data Error: 3 : Cannot find element that provides DataContext. BindingExpression:(no path); DataItem=null; target element is 'FrameworkElement' (Name=''); target property is 'DataContext' (type 'Object')

Wie bekomme ich das Binding hin?

Thema: Primitives.Thumb (Drag and Drop) mit Touch
Am im Forum: GUI: WPF und XAML

Hallo Community,

Ich habe eine ListBox welche Punkte anzeigt und verschieben lässt.

<DataTemplate DataType="{x:Type local:Node}">
            <Thumb DragDelta="Thumb_DragDelta">
                <Thumb.Template>
                    <ControlTemplate>
                        <Ellipse Margin="-10,-10,10,10" Height="20" Width="20" Stroke="Black" StrokeThickness="1" Fill="#5FFFFFFF" x:Name="Node" />
                    </ControlTemplate>
                </Thumb.Template>
            </Thumb>
        </DataTemplate>

und im DragDelta:

  Thumb thumb = sender as Thumb;
            if (thumb == null) return;

            Node node = thumb.DataContext as Node;
            if (node == null) return;

            node.Move(e);

Das ganze funktioniert wie gewünscht.
Jedoch nur mit der Maus, wie kann ich einem Thumb ebenfalls auf Touch events reagieren oder muss ich mir hier mit Manipulation alles selber implementieren ?

Vielleicht hat jemand damit erfahrung?

mfg Console

Thema: [Erledigt] DeltaManipulation.Scale liefert nicht das gewünschte Ergebnis
Am im Forum: GUI: WPF und XAML

Ich hab nun die Ursache gefunden.

Das UIElement liegt auf einem ScrollViewer welcher den PanningMode auf HorizonzalOnly gestellt hat, entferne ich diese Property funktioniert das ManipulationDelta wie gewünscht.

Der ScrollViewer ändert mir wohl den Mode auf Translate.
Wenn ich von ScrollViewer ableite und OnManipulationStarting überschreibe funktioniert es.

        protected override void OnManipulationStarting(ManipulationStartingEventArgs e)
        {
            base.OnManipulationStarting(e);
            e.Mode |= ManipulationModes.Scale;
        }

Thema: Mysql Insert funtkoniert nicht
Am im Forum: Datentechnologien

Funktionert nicht heißt?

Exceptions? Oder keine Einträge ?

EDIT: Bitte beachte
[Hinweis] Wie poste ich richtig? Punkt 2.1 und 5

Thema: [Erledigt] DeltaManipulation.Scale liefert nicht das gewünschte Ergebnis
Am im Forum: GUI: WPF und XAML

Hallo Community,

Ich versuche gerade eine AttatchedProperty zu schreiben um einem UIElement das Zoomen per Touch zu ermöglicht. Dazu verwende ich das ManipulationDelta Event des UIElements.

Die Scale Property der EventArgs ist jedoch immer gleich (1,1)
Während alle andere Propertys ein nachvollziebares ergebniss ausspucken.

Hier der Code des events.
Sollte ich für Zoom mit etwas anderem arbeiten oder wieso ist das Delta hier immer gleich?


  private void UIElementManipulationDelta(object sender, ManipulationDeltaEventArgs e)
            {
                UIElement uiElement = sender as UIElement;
                if (uiElement != null && e.Manipulators.Count() == 2)
                {
                    Debug.WriteLine(e.DeltaManipulation.Scale.X + ", " + e.DeltaManipulation.Scale.Y );
                }
            }

mfg Console

Thema: Suche Datentyp für Zahlen mit beliebig vielen (Vor- und Nachkomma-)Stellen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Dein ansatz mit Ziffern ist falsch damit kann man nie das maximum erreichen da du mit 2* 4 bit nu 0-99 darstellen kannst während ein byte 0-255 darstellen kann.

des weiteren ist eine floating point number wie double nicht präzise und verliert information.

Ich würde eher den ansatz gehen mit long oder int zu arbeiten anstelle von char/bit oder byte/

sieh dir mal die implementierung von BigInteger an vielleicht ist das etwas in deine richtung.

EDIT: Ich wusste garnicht das es eine Framework klasse auch gibt ^^

Thema: Suche Datentyp für Zahlen mit beliebig vielen (Vor- und Nachkomma-)Stellen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

vielleicht kannst du uns etwas mehr zu deinem vorhaben sagen, was ist für dich sehr groß?

Thema: Console Output innerhalb der Anwendung überwachen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

wenn du genau das erreichen willst bist du wahrscheinlich mit PostSharp am schnellsten am Ziel. Wobei ich mir nicht vorstellen kann wozu das gut sein soll.

Thema: Kommunikation zwischen einer Desktop exe und einer Windows store app
Am im Forum: Rund um die Programmierung

Im moment geht es Hauptsächlich umd zwei Punkte:

Zugriff auf die Serielle schnitstelle (System.IO.SerialPort) und OleDbConnection (da wir ältere Datei formate unterstützen müssen)

Im grunde jedoch sollte es mit überscheibarem aufwand möglich sein eine .NET Core Framework klasse in meiner Store App über diese Brücke und entsprechnde Wrapper anzusprechen.

Thema: Kommunikation zwischen einer Desktop exe und einer Windows store app
Am im Forum: Rund um die Programmierung

Hallo Community,

Ich suche nach einer einfachen möglichkeit eine brücke zwischen einer desktop exe und einer windows store app zu erstellen (das diese nicht über den store installiert werden kann ist mir klar).

Hat jemand mit diesem thema erfahrung?

Thema: Bootfähigen USB-Stick aus ISO erstellen
Am im Forum: Rund um die Programmierung

Rufus ist eine eine open source software zum erstellen von bootbaren usb sticks (ist ein Visual C++ projekt wenn ich richtig liege) vielleicht kommst du damit weiter.

Thema: KeyBinding: Nicht Command sondern Event auslösen?
Am im Forum: GUI: WPF und XAML

Du kannst einfach einen DelegateCommand verwenden der die Selbe Methode benutzt wie der ButtonClick Handler. Alternativ kannst du auch den Button an den Selben Command binden und dir den Handler sparen. Mit DataContext -> Self

        public ICommand HotkeyCommand { get { return new DelegateCommand(this.DoSomething) ;} }

Bzw den Command besser im Constructor erstellen da du ja nur einen benötigst.

Thema: Foreach listViewItem in einem Workerthread
Am im Forum: GUI: Windows-Forms

Warum willst du eine GUI aktion in einem WorkerThread ausführen?

Invokes erzeugen viel overhead dh. einmal invoken und die schleife wieder im GUI Thread ausführen.


this.Invoke(new Action(()=> 
{
foreach....
});

Thema: STA Thread Change - SplashScreen "behalten"
Am im Forum: GUI: Windows-Forms

Starte doch den SplashScreen direkt in einem eigenen Gui thread

Warum wächselst du überhaupt den GUI Thread?

Thema: for-Schleifen: Warum macht Postfix - oder Präfixinkrementierung der Laufvariable keinen Unterschied?
Am im Forum: Rund um die Programmierung


int i = 0;
while(i < 5)
    Console.WriteLine(++i);

Bei deinem Code ist i zum Zeitpunkt des schreibens schon erhöht egal ob post oder pre, das ändert in diesem teil der for Schleife nichts.

Thema: Windows RT App DataBinding einer ObservableCollection (DefaultViewModel)
Am im Forum: Rund um die Programmierung

Okay ich habe es nun gefunden.
Mir war nicht klar das das DataBinding die Werte über die DP zuweißt und nicht über die Property deswegen wurde mein Handler immer verworfen.

Mit einen PropertyChanged Handler in der Metadata Funktioniert es.

Thema: Windows RT App DataBinding einer ObservableCollection (DefaultViewModel)
Am im Forum: Rund um die Programmierung

Okay ich habe das "Problem" jetzt gefunden, entferne ich den DataContext aus dem UserControll funktioniert es.

Nun tritt ein seltsames Problem auf:
Obwohl sich die Collection meines UserControlls ändert wird der EventHandler nicht ausgelöst. Obwohl die CollectionChanged handler nicht null ist.

UserControl:

public static readonly DependencyProperty ValuesProperty =
            DependencyProperty.Register("Values", typeof(ObservableCollection<CurvePoint>), typeof(CurveTest), new PropertyMetadata(new ObservableCollection<CurvePoint>()));

        public ObservableCollection<CurvePoint> Values
        {
            get { return (ObservableCollection<CurvePoint>)GetValue(ValuesProperty); }
            set 
            {
                 value.CollectionChanged += Values_CollectionChanged;
                 SetValue(ValuesProperty, value); 
            }
        }

        public CurveTest()
        {
            
            this.InitializeComponent();
            this.Values.CollectionChanged += Values_CollectionChanged;
        }

        void Values_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
        {
        }

Im ClickHandler:

            ((ObservableCollection<CurvePoint>)this.DefaultViewModel["Values"]).Add(new CurvePoint());

Woran kann das liegen?

Thema: Windows RT App DataBinding einer ObservableCollection (DefaultViewModel)
Am im Forum: Rund um die Programmierung

Was innerhalb passiert ist erstmal egal da die collection leer bleibt.

Es geht mir im moment nur darum das die ObservableCollection meines UserControls keine änderungen an dem ViewModel mitbekommt

Thema: Windows RT App DataBinding einer ObservableCollection (DefaultViewModel)
Am im Forum: Rund um die Programmierung

Hallo MrSparkle

Ja es ist ein eigenes UserControl, Values ist eine DependencyProperty im Output stehen im Moment keine Fehler. Montag kann ich das ganze nochmal mit Tracing versuchen.

Das TwoWay wird benötigt ändert aber nichts an meinem Problem.
DebugConverter seh ich mir ebenfalls am Montag an.

Thema: Windows RT App DataBinding einer ObservableCollection (DefaultViewModel)
Am im Forum: Rund um die Programmierung

Hallo Community,

Ich habe ein UserControl welches eine ObservableCollection<MyPoint> als Property definiert.

Nun bieten die Windows 8 Store templates ein DefaultViewModel vom Typ ObservableMap<strting,Object>.

Diesem DefaultViewModel füge ich ebenfalls eine ObservableCollection<MyPoint> hinzu:

this.DefaultViewModel["Values"] = new ObservableCollection<CurvePoint>();


Im Xaml erstelle ich dann das Binding.
            <userControls:Curve x:Name="Curve"  Grid.Column="0"  Values="{Binding Values, Mode=TwoWay}"/>

das DefaultViewModel["Values"] ist ebenfalls an einen ListView gebunden:
Füge ich dem DefaultViewModel["Values"] nun werte hinzu werden die änderungen im ListView angezeigt in meinem UserControll kommen diese jedoch nicht an (Die Collection ist weiterhin Leer) wieso werden die Änderungen nicht an mein UserControl weitergegebn

Thema: Windows RT Metro UI Theme Colors (Windows 8 -> 8.1)
Am im Forum: Rund um die Programmierung

Hallo,

Nach etwas Googeln bin ich nicht wirklich schlauer geworden, bis auf die Tatsache das es wohl mit Windows 8 nicht möglich ist auszulesen welche Farbe Windows 8 gerade verwendet.

Mir geht es um die Einstellungen: die Übersicht wird hier immer in der Aktuellen Systemfarbe angezeigt, genauso wie der unterpunkt "Permissions" immer den Header der aktuellen Systemfarbe verwendet. Bei meinem eigenen unterpunkten hätte ich natürlich auch gerne die selbe Farbe.

Weiß jemand ob sich die Systemfarbe der Metro UI mit 8.1 auslesen lässt?

Thema: globale Ereigniss auswerten mit MessageFilter?
Am im Forum: GUI: Windows-Forms

Möglich ja, aufwand nicht zu verachten. Da P/Invoke (zumindest bei mir) immer sehr viel Zeit in Anspruch nimmt.

How can I catch a global cursor icon change event in C#? damit sollte man schon relativ weit kommen.

Wenn es darum geht, eine neue Hardware zu rechtfertigen würde ich es zuerst mit Schätzungen versuchen