Laden...

Profil von talla

myCSharp.de - Experte Mitglied seit

Alle Beiträge

Hallo,

Was kann ich tun?

Die Fehlermeldung posten!?! Beachte bitte [Hinweis] Wie poste ich richtig? Punkt 5.

Wie greifst du auf die Ressourcen zu? Benutz du relative oder absolute URIs?

Hallo,

die Frage ist hier, ob die Daten dann noch gültig sind, sprich man kann noch was damit anfangen. Oder ist dann das ganze Ergebniss hinüber?

Aus der Tatsache, dass du Exceptions in Betracht ziehst und du dann ja gar keinen Rückgabewert bekommen würdest, nehme ich mal an, dass im Fehlerfall die Daten sowieso ungültig sind, und dann kommt eindeutig nur Variante 2 in Frage.

Dass du ewig viele Exceptions brauchst, stimmt nicht. Du kannst dir eine definieren mit einem eigenen Property welches ein Fehlerobjekt ala Variante 1 enthält und anhand dessen du genauere Infos zu den auftretenden Fehlern bekommst.

Variante 3 kannste knicken. Dann auf jedenfall lieber Variante 1 falls die Daten doch gültig sein können.

Hallo,

ich meine das ItemsPanel Property von der Selector Klasse. Dort kannst du angeben welches Panel benutzt wird vom Selector. Selector ist die Basisklasse von z.B. ListBox und ListView.

Beim ItemStyle habe ich mich vertan, habe das ItemTemplate gemeint. Dort kannst du angeben, wie ein einzelnes Item auszusehen hat. In diesem Fall dein StackPanel mit dem Image und dem Label drin.

Hallo,

so wie du es vorhast, macht man das in WPF nicht.

Benutz einfach einen Selector mit einen WrapPanel als ItemsPanel und einem ItemStyle welcher dir die Items so anzeigt wie du es willst. Setzt das IsSynchronizedWithCurrentItem Property auf true und dann bindest du einfach eine Collection welche die DirectoryInfos enthält dagegen und schon wird erstmal alles so angezeigt wies soll und du musst nicht manuell mit der GUI rummachen, sondern es reicht einfach die gebundene Liste im Code zu ändern.

Von dieser Liste kannst du dir die CollectionView holen und dort hast du dann ein CurrentItem Property welches immer das selektierte Item enthält (Die selektion passiert ja zeitgleich mit dem MouseClick) So hast du GUI und Logik vollkommen getrennt und kriegst dennoch direkt das Item welches ausgewählt wurde.

Hallo,

was für Buttons? Die mit denen du zwischen den Tabs umschaltest? Da kannst du am Tempalte für die Tabitems rumschrauben solange du willst, und sie nicht reinbekommen, da sie nicht durch die TabItems platziert werden sondern durch das TabControl. In der MSDN gibts nen Beispiel für ein TabControl Template. Dort gibts ein TabPanel wo die Buttons angezeigt werden (die müssen ja alle immer sichtbar sein)

30.03.2012 - 16:05 Uhr

Hallo,

das stimmt nicht, dass die zu benutzende Schriftart installiert sein muss. Man kann eigene Fonts mit der PrivateFontCollection Klasse verwenden. In How to embed a True Type font gibts ein Beispiel wies geht. Ist halt nen bissle umständlicher.

30.03.2012 - 09:29 Uhr

Hallo,

ist es den IT Abteilungen denn lieber einen Webserver laufen zu lassen bzw. konfigurieren zu müssen für deine Applikation? Der ist hier nämlich erforderlich, da das ganze ja auf ASP.NET basiert.

Hallo,

Alles was beim Parsen der XAMLs schief geht, wird in Form von XamlParseException geworfen. Der eigentliche Grund steht in der InnerException.

Aber der Grund ist hier klar. Window ist ein ContentControl und kann daher nur ein einziges Child haben. Du versuchst aber mit AddChild mehrere hinzuzufügen, also knallts natürlich.

ich bin noch total unbewandert zum thema c# und WPF

Dann ist WPF sicherlich nicht das beste Thema, da die Lernkurve selbst für erfahrende C# Programmierer relativ steil ist. Zum Thema Anfänger schau bitte unbedingt [Hinweis] Wie poste ich richtig? Punkt 1.1.1 an.

Hallo,

was kommt bei

<!-- TargetType="{x:Type DeviceButton}" endet mit einem Compilerfehler -->

denn für ein Fehler? Sollte natürlich gehen und ist auch hier nötog, da du sonst ja nicht auf die Properties gescheit zugreifen kannst.

CornerRadius und ToggleMode als automatische Properties ist auch alles andere als toll, da du gegen die ja nicht binden kannst. Bzw. binden natürlich schon, aber es tut nicht, da sie Änderungen ja nicht bekanntgeben. Verwende da lieber DependencyProperties.

28.03.2012 - 10:03 Uhr

Hallo,

in WPF solltest du da gar keine Probleme haben, da WPF allgemein mit geräteunabhängigen Einheiten bei Größenangaben arbeitet, und nicht mit Pixelangaben.

Hast du denn grad irgendein bestimmtes Problem?

Hallo,

Es gibt keine Möglichkeit Code hinzuzufügen (.class Dateien bei Java sind auch kein Code, sondern schon kompilierter Quelltext). Innerhalb einer .Net Assembly etwas zu ersetzen geht nicht (abgesehen richtig umschreiben mit Mono.Cecil und Co.). Techniken um bestehende Programme erweiterbar zu machen gibts genügend (MEF, Plugins, DI um nur mal wild ein paar Stichpunkte reinzuwerfen)

DataGrid

Beitrag
23.03.2012 - 14:56 Uhr

Hallo,

ich nehmen mal an, alles hat die gleiche Datenquelle da du ja nur von veränderter Darstellung sprichst. Dann reicht es einfach IsSynchronizedWithCurrentItem zu benutzen.

20.03.2012 - 20:25 Uhr

Hallo,

der Request und Reply haben ja den identischen Aufbau, daher unterschieden die sich nur in den Nutzdaten die mitgesendet werden. Beim Reply wird halt die Mac Addresse des gesuchten Devices mitgesendet, wo vorher die Broadcastadresse eingetragen war.

Was willst du aber eigentlich erreichen? Solls nen Gratuitous ARP werden oder ARP Spoofing? 😉 Normal brauch man sich als User reichlich wenig um sowas kümmern, da das alles im Netzwerkstack direkt ohne groß Wissen des User behandelt wird.

Hallo,

die ListView ist doch schon ein ItemsControl. Eine ListView in ein ItemsControl zu packen und dann die Items per Binding zu verbinden, ist doch völlig unnötig. Alles was du brauchst, ist doch nur ein passendes ItemTemplate für die ListView, oder wenns aufwendiger werden sollte, nen eigenes Template für die ListView, wenn noch etwas drum herum um den ItemsPresenter soll.

Im Bild siehts aus als wenn der ScrollViewer einfach oberhalb des ItemsControls ist. Wie sieht denn der Visual Tree bzw. das XAML dazu aus?

Hallo,

passt schon. Ist im Prinzip genau das was ich im verlinkten Beitrag als Lösung beschrieben habe. Das Objekt wo der DataContext drin ist (in diesem Fall dein UC) ist nun konstant und nur das Property (in diesem Fall DataContext) ändert sich. Dann passts auch mit dem Binding.

Hallo, du musst da nicht casten. Du bekommst halt nicht ein einzelnes Element zurück, sondern eine Menge von Elementen. Wenn du nur eins willst, z.B. das erste, dann kannst du das mit First holen.

Hallo,

er bekommt das nicht mit, weil sich für das Binding die Quelle doch nie ändert. Beim Erstellen des Bindings bekommt er ja die Referenz des Settings Objekts mit, welches Settings.Instance zurückgibt. Wenn du jetzt Instance nen neues Objekt zuweist, ändert sich doch für das Binding nichts, da es ja immer noch ne gültige Referenz auf das vorherige Objekt hat.

Es ist im Prinzip genau das gleiche Grundproblem wie hier: [Gelöst] Datenbindung an wechselnde Elemente einer Liste / wechselnde Objekte

Wenn du schon eine Kopie hast, dann ersetz doch einfach die konkreten Werte, statt das komplette Objekt.

Hallo,

ist es denn überhaupt nötig einen Timer zum Senden auf PC Seite zu haben? Die Hardware hat doch eh eigene Sende- und Empfangspuffer. Kann man dort die zu versendenen Nachrichten nicht blockweise reinschieben und die HW sendet das mit dem eigenen Timer nach dem angegebenen Sendeintervallbei zyklischen Nachrichten? Grad bei den per USB angeschlossenen Boxen könnte man es doch sonst vergessen mit einigermaßen genauer Kommunikation, da ja auch USB lange nicht die Genauigkeit bietet die notwendig ist bei den verschiedenen Bussystemen.

Da bist du doch völlig frei. Für die Darstellung aus deinem Bild ist das doch einfach nur ein ItemTemplate mit einem Image, einen Bereich mit den Texten und noch ein Image (bzw. wenn das anpinnen tun soll, kann das auch ein Button sein).

Hallo,

wozu willst du da ein Control basteln? Sind doch einfach nur zwei ListBoxen/ListViews?

Hallo,

was soll isRunning sein? Zeig mal ein bisschen Code, weil so kann man nur spekulieren was du da eigentlich machst. Bei Commands musst du weder mit Opacity noch mit IsEnabled von Controls arbeiten. Das (De)aktivieren geschieht dort automatisch durch CanExecute.

Hallo,

ich kann mich t2t nur anschließen. Thread.Sleep als Timeralternative zu benutzen ist grober Unfug. Thread.Sleep wartet auch nur mindestens die spezifizierte Zeit. Es ist jederzeit möglich, dass Thread.Sleep erst später zurückkehrt. 5ms sind so oder so aber arg knapp. Allein durch das Thread Scheduling kanns zu viel längeren Wartezeiten kommen wenn es grad zu einem Threadwechsel kommt.

19.03.2012 - 11:56 Uhr

Hallo,

wieso sollte das nicht gehen? Den Code hast du doch auch schon, immerhin lädst du sie doch schon. Statt nur beim Buttondruck führst du halt diese Aktion nach dem entladen aus.

Hallo,

die Vorlagen bekommst du, indem du eine der "größeren" Editionen benutzt. Die Express Version unterstützt nur die Entwicklung der Metro Applikationen (siehe VS 11 Product Guide)

Hallo,

siehe hier: How to: Subscribe to and Unsubscribe from Events

Das gehört aber zu den absoluten Grundlagen, daher mit Hinweis auf [Hinweis] Wie poste ich richtig? Punkt 1.1.1 geschlossen.

Hallo,

mit INotifyPropertyChanged hast du schon das passende gefunden.

Implemetiere einfach in deiner Subklasse INotifyPropetyChanged,

wann eine **Variable **in der zweiten Klasse geändert wurde Mach daraus nen Property, und im Setter wirfst du einfach das PropertyChanged Event.

Deine andere Klasse muss einfach das Event abonieren, und schon bekommst du die Änderung vom Property mit.

Hallo,

nichts was nicht in der MSDN erklärt ist 😃 Siehe hier. Das Beispiel beschreibt den typischen Anwendungsfall, dass ein Property durch ein anderes coerced wird, genauso kann man das aber auch für das eigene Property machen, wie es hier ja gewollt ist.

Hallo,

das mit der boolschen Variable ist unnötig. Das ganze fällt ja unter Value Coercion und genau dafür gibts das entsprechende Delegate das man beim registrieren der DP mit angeben kann. Da sorgt WPF dann schon selber das es zu keiner Endlosschleife kommen kann.

Was für ein PivotViewer? Sowohl bei Silverlight als aúch WPF ist keiner standardmäßig mit dabei.

14.03.2012 - 09:43 Uhr

Hallo,

die von dir in der MSDN verlinke Klasse ist nicht die, die nicht gefunden wird. HttpWebRequestData ist eine eigene Klasse die im Artikel doch erstellt wird.
Genau lesen sollte man schon.

13.03.2012 - 17:28 Uhr

Hallo,

genau so tuts bei mir. Einfach mit foreach über die CollectionView (nicht vielleicht fälschlicherweise über die Collection) und es kommen nur die gefilterten Einträge raus.

13.03.2012 - 16:27 Uhr

Hallo,

wieso rankommen an die CollectionView? Die hast du doch schon, das ist die wo du den Filter setzt.

Hallo,

im Prinzip sollte die Problematik in den Bereich der Fehlerfortpflanzung reinfallen. Wendet man zwar eher bei Messgrößen an, aber im Prinzip sollte das ja nichts anderes bei dir sein mit dem möglicherweise fehlerbehafteten Input.

13.03.2012 - 07:54 Uhr

Gibt es wirklich keine Möglichkeit Geometrie-Objekte in einen Stroke zu überführen? Doch, genau das was du grad machst 😃 Wieso sollte das eine Krücke sein?

Strokes beschreiben Freihandzeichnungen anhand von Punktsammlungen. Da ist keinerlei Information vorhanden, wie die Semantik ist. Auf der anderen Seite hat man Geometrien, welche Objekte anhand von geometriespezifischen Eigenschaften beschreiben, man hat aber keine Informationen wie die einzelnen Punkte der Geometrie sind, auch weil das ja überhaupt abhängig davon ist, wie genau man das bestimmen will. Eine Geometrie hat unendlich viele Punkte.

Das sind zwei völlig unterschiedliche Konzepte, auch wenn die Darstellung dann ähnlich aussieht. Wenn du ein Konzept davon in ein anderes überführen willst, musst du halt bissle selber Hand anlegen.

13.03.2012 - 07:36 Uhr

Hallo,

bitte immer [Hinweis] Wie poste ich richtig? Punkt 5 mit beachten. Mit "bis auf einen Batzen Fehlermeldungen kam nichts gescheites dabei raus" kann man doch nichts anfangen als Problembeschreibung.

Wie man JSON Daten in Silverlight verarbeitet ist hier zu finden (übrigens erster Treffer mit ner simplen Websuche, womit wir wieder bei obigen Link Punkt 1.1 wären 😃 ) Oder ist das eigentliche senden der Daten das Problem?

13.03.2012 - 07:20 Uhr

Hallo,

war bissle blöd vielleicht formuliert, aber genau das hab ich doch beschrieben. "selber zeichnen" war gedacht im Sinne als Gegenteil von "Usergezeichnet".

Ich habe ja beschrieben wie du Strokes erstellen kannst, und was dazu nötig ist. Das bissle Mathematik um Punkte einer Ellipse, bzw. Kreis zu berechnen ist nun echt nicht das Problem.

12.03.2012 - 21:21 Uhr

Hallo,

Du gehst das zu simpel an. Du gehst davon aus, dass der primäre Monitor ganz links steht. Dass muss natürlich nicht sein. Auch der ganz rechts könnte z.B. der primäre sein (und was ist mit den Fall das Monitore übereinander stehen? 😃), dann kommst du natürlich nicht wirklich mit deiner Positionierung hin, da du ja Left und Top nur anhand des primären Bildschirms bestimmst.

Ist das schon mit deiner Frage 1 gemeint, oder was soll "nicht richtig aufm Bildschirm" bekommen, bedeuten?

Zu 2.: Keine Ahnung was du meinst. Da du auch nicht zeigst was du machst beim MAusklick, kann man auch schlecht sagen warum das nicht geht.

Hallo,

mich wundert es eher, wieso es im FX funktioniert 😃 Bei Application Exit ist die App ja schon am beenden. Sobald die Methode durch ist, kann gar nichts mehr passieren. Der asynchrone Methodenaufruf startet ja nur den Vorgang und dann ist das Exit auch schon vorrüber. Ich sehe keinen Grund, wieso der Browser noch überhaupt irgendwie Code ausführen sollte.

Die Lösung ist einfach, mach das ganze synchron.

12.03.2012 - 18:30 Uhr

Hallo,

Zeichne deine Objekte halt selber. Du kannst manuell neue Strokes erstellen und im Konstruktor musst du entsprechend die Punkte der Zeichnung mitgeben. Die so erstellten Strokes kannst du dann in die Strokes Collection vom InkCanvas packen.

Hallo,

enn ich Sie auf 2.0 umstelle bekomme ich Fehler dass zwei Befehle nicht existieren.
"Directory.EnumerateDirectories", "EnumerateFileSystemEntries".

Normal, da die Methoden erst mit .Net 4 eingeführt wurden.

es funktioniert einfach nicht Bitte immer [Hinweis] Wie poste ich richtig? Punkt 5 beachten."Funktioniert nicht" ist völlig unbrauchbar als Fehlerbeschreibung - was funktioniert nicht? Startet es nicht, oder startet es und es tut nur nicht so wie gedacht? Wenn es selbst mit nach installierten Framework nicht tut, würde ich auf einfachen Programmierfehler tippen, vielleicht fehlen dir auch Berechtigungen irgendwo zuzugreifen etc. Aber im Prinzip hilft nur ordentlich debuggen um zu sehen was los ist.

Hallo,

...oder ist das tatsächlich nicht so einfach?

Es ist viel einfacher als du denkst. WPF brauch sowas wie DisplayStyle gar nicht, weil du beliebigen Inhalt reinpacken kannst. Nimm einfach nen Button als Item und in dem Content vom Button packst du halt dein Bild und nen TextBlock für die Beschreibung.

(d.h. sollte ich zuerst mal zu einem guten Buch greifen) Ist sicherlich nicht verkehrt. Grad als Umsteiger ist man ja versucht es so wie in der bekannten Technologie zu machen, so wie du es ja auch gemacht hast, da du sowas wie DisplayStyle gesucht hast. Und damit kommt man nicht weit. WPF funktioniert ganz anders als Windows Forms und um effektiv WPF benutzen zu können, sollte man am besten das Windows Forms Wissen ganz hinten im Kopf verstauen und sich wirklich neu auf WPF einlassen und neu lernen.

Hallo,

Resharper kann sowas, aber auch das hilft eigentlich nur begrenzt.

Durch die Art wie Ressourcen in WPF arbeiten, kann man zwar lokal innerhalb einer Assembly sagen, ob eine Ressource benötigt wird oder nicht, aber man kann keine Aussage für das komplette Programm machen.

Es wird sogar sehr gerne gemacht, eine Ressourcen Assembly zu haben, deren Ressourcen auf oberster Ebene in die App rein gemergt werden. Alle anderen Assemblies die im Programm benutzt werden, haben keinerlei Verweis darauf, außer das irgendwo im XAML per Namen verwiesen wird. Und jetzt ist halt das Problem, dass die Ressourcen Assembly ja nicht weiß, was noch so für Assemblies im Programm genutzt werden und daher man von dort ausgehend, nicht sagen kann ob eine bestimmte Ressource benötigt wird oder nicht.

Am besten hilft gegen das Ganze Disziplin bei der Entwicklung und erst gar nicht solche Leichen entstehen zu lassen 😃

09.03.2012 - 19:46 Uhr

Hallo und willkommen im Forum,

hier gibts massig Stoff zum Einlesen:
[FAQ] Office (Word, Excel, Outlook, ...) in eigenen Anwendungen verwenden
NetOffice - Ein versionsunabhängiger Wrapper für MS-Office
Damit kommst du zum Ziel

und noch der Hinweis auf unsere Regeln: [Hinweis] Wie poste ich richtig? da dein Post arg Richtung Punkt 4 geht. Bitte beachten

Hallo,

mit der Denke kommst du in WPF nicht weit (auch im allgemeinen ist sie einfach verkehrt).

Die Controls arbeiten normalerweise vollkommen unabhängig von irgendeiner Datenstruktur und stellen kaum Anforderungen. Stattdessen ist es der Programmierer der durch DataBinding und Styles/Templates vorgibt, wie das Control auszusehen hat und welche Daten es aus der Datenquelle wie bekommt. Sprich es gibt im allgemeinen überhaupt keine Datenstruktur wie du es erhoffst vorzufinden.

Beim PropertyGrid ist es in der Tat zwar ein wenig anders, aber nicht so wie du es dir erhoffst. Die PropertyGrids zeigen wie der Name schon sagt, Properties einer Klasse an. Von daher brauchst du doch deine Datenklasse um den PropertyGrid zu sagen welche Properties es anzuzeigen hat. Daher geht dein Plan so nicht. Ich halte PropertyGrids hier eh bissle fehl am Platz, weil das ja heißen würde, deine Datenklasse muss dynamisch Properties zugewinnen wenn du mehr anzeigen willst, und das liegt nunmal nicht in der Natur von C# 😃

Selbst wenn es all sowas gäbe, Controls zur Datenhaltung zu serialisieren ist großer Mist. Controls zeigen immer nur Daten an, enthalten sie aber nicht. Diesen Grundsatz darf man nie vergessen weil man in ein Haufen Probleme rennt, wenn man sich nicht dran hält.

Hallo,

bevor du an die Darstellung gehst, sollte erstmal klar sein wie du die Daten denn aufbaust und verwaltest. Die Anzeige ist ja dann trivial, schwieriger find ich hier, überhaupt ein generisches Datenhaltungskonzept zu entwerfen.

Wie hast du dir die Datenstruktur denn vorgestellt?

Achja, WPF PropertyGrids gibts auf codeplex.

Hallo,

wie sieht die Definition im ResourceDictionary denn aus?

Hallo,

im MVVM Pattern benutzt man für sowas UI Services. Wie die funktionieren kannst du dir z.B. bei Cinch oder der Referenzimplementierung von MS anschauen.

Benutze statt RenderTransform die LayoutTransform und es tut 😃

08.03.2012 - 15:34 Uhr

Dann läufts auf nen einfaches switch hinaus, wo du je nach Typstring halt nen anderen Aufruf von GetEvent machst mit dem passenden Typparameter.