{"id":88022019,"date":"2024-04-25T15:50:04","date_gmt":"2024-04-25T15:50:04","guid":{"rendered":"http:\/\/access-basics.de\/index.php\/88022019.html"},"modified":"2024-04-25T15:50:04","modified_gmt":"2024-04-25T15:50:04","slug":"88022019","status":"publish","type":"page","link":"https:\/\/vbentwickler.de\/88022019\/","title":{"rendered":"Visual Basic Entwickler 02\/2019"},"content":{"rendered":"<h3>Bytes im Griff mit der Stream-Klasse: FileStream<\/h3>\n<p>Die Stream-Klasse ist die Basisklasse f\u00fcr verschiedene Stream-Klassen wie FileStream oder MemoryStream. Streams bieten die M\u00f6glichkeit, Byte-genau schreibend wie lesend auf Daten aus Dateien, dem Arbeitsspeicher oder dem Netzwerk zuzugreifen. Dieser Artikel zeigt, welche Stream-Klassen es gibt und geht genauer auf die FileStream-Klasse ein. Dabei zeigen wir, wie Sie mit dieser Klasse lesend und schreibend auf den Inhalt von Dateien zugreifen und den Inhalt mit Byte-Arrays austauschen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Bytes_im_Griff_mit_der_StreamKlasse_FileStream\">Zum Artikel &#8230;<\/a><\/p>\n<h3>EDM f\u00fcr bestehende Datenbank mit Code First <\/h3>\n<p>Wenn Sie ein Entity Data Model mit der Vorlage \u00bbCode First aus Datenbank\u00ab auf Basis einer bestehenden Datenbank erstellen, haben Sie vielleicht Pech und die Namen der Tabellen der Datenbank und der enthaltenen Felder lauten nicht so, wie Sie die Entit\u00e4tsklassen, die DbSet-Elemente und die Eigenschaften der Klassen nennen m\u00f6chten. Dann haben Sie verschiedene M\u00f6glichkeiten: Zum Beispiel k\u00f6nnen Sie die Bezeichnungen in der Datenbank anpassen. Das geht aber oft nicht, weil vielleicht noch andere Frontends auf die gleiche Datenbank zugreifen. Dann haben Sie noch die M\u00f6glichkeit, die Bezeichnungen von Datenbank und Entity Data Model so zu mappen, dass beide Seiten zufrieden sind. Wie letzteres gelingt, zeigen wir im vorliegenden Artikel am Beispiel der S\u00fcdsturm-Datenbank.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/EDM_fuer_bestehende_Datenbank_mit_Code_First_\">Zum Artikel &#8230;<\/a><\/p>\n<h3>WPF: DataTrigger und MultiDataTrigger<\/h3>\n<p>Um die Eigenschaftswerte von Steuerelementen abh\u00e4ngig von den Werten anderer Steuer\u00adelemente oder auch von Eigenschaften einzustellen, verwenden Sie Data\u00adTrigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis\u00adein\u00adsatz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k\u00f6nnen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Mehrspaltige Kombinationsfelder<\/h3>\n<p>Manchmal m\u00f6chte man mit einem Kombinationsfeld nicht nur den Wert eines Feldes anzeigen, sondern gleich mehrere. Unter Access war das zumindest f\u00fcr die Auswahlliste schnell erledigt \u2013 Sie brauchten einfach nur die Eigenschaften Spaltenanzahl und Spaltenbreiten anzupassen. Wenn der Inhalt des Kombinationsfeldes auch die Daten mehrerer Felder liefern sollte, mussten Sie diese per Zeichenkettenfunktion zusammenf\u00fchren. Wie aber sieht das im WPF-Steuerelement \u00bbComboBox\u00ab aus? Dieser Artikel zeigt, welche M\u00f6glichkeiten dieses Steuer\u00adelement f\u00fcr mehrspaltige Eintr\u00e4ge bietet.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Mehrspaltige_Kombinationsfelder\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Entity Framework: Bilder in WPF<\/h3>\n<p>Im Artikel \u00bbPowerApps: Bilder in Datenbank speichern\u00ab haben wir gezeigt, wie Sie mit einer PowerApp \u00fcber ein Smartphone oder ein Tablet Bilder aufnehmen und diese dann in einer Datenbank speichern. Nun wollen wir uns ansehen, wie Sie diese Bilder aus der Datenbank in einer WPF-Anwendung anzeigen, die \u00fcber das Entity Framework auf die Tabellen der Datenbank zugreift.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Entity_Framework_Bilder_in_WPF\">Zum Artikel &#8230;<\/a><\/p>\n<h3>EDM: Bl\u00e4ttern in Datens\u00e4tzen<\/h3>\n<p>Wenn Sie und Ihre Kunden die Arbeit mit der Detailansicht von Access-Formularen gewohnt sind, m\u00f6chten Sie vielleicht auch in einem WPF-Fenster mit der Detailansicht der Daten einer Klasse bl\u00e4ttern k\u00f6nnen. Dieser Artikel zeigt, wie Sie einem Detailformular die Daten einer Tabelle \u00fcber die entsprechende DbSet-Auflistung zuweisen und wie Sie mit entsprechenden Schaltfl\u00e4chen in den Datens\u00e4tzen bl\u00e4ttern k\u00f6nnen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/EDM_Blaettern_in_Datensaetzen\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Validieren mit VB und EDM<\/h3>\n<p>Im Artikel EDM: Validieren von Entit\u00e4ten mit IDataErrorInfo haben wir bereits erl\u00e4utert, wie Sie einer auf dem Entity Framework basierenden Anwendung eine Validierung hinzuf\u00fcgen k\u00f6nnen. Im vorliegenden Artikel schauen wir uns an, wie Sie die Validierung nicht unter C#, sondern unter VB realisieren und welche \u00c4nderungen in den Methoden zum Migrieren einer Access-Anwendung nach WPF\/EDM notwendig sind, um die Validierung vorzubereiten oder gegebenenfalls auch direkt umzusetzen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Validieren_mit_VB_und_EDM\">Zum Artikel &#8230;<\/a><\/p>\n<h3>\u00c4nderungen erkennen und verwerfen<\/h3>\n<p>Unter Access k\u00f6nnen Sie beispielsweise mit der Escape die aktuellen ungespeicherten \u00c4nderungen an einem Datensatz verwerfen. Das Formular zeigt dann direkt die Daten an, die beim letzten Speichern in den gebundenen Feldern enthalten waren. Dieses Verhalten wollen wir auch f\u00fcr Fenster abbilden, die an ein Element gebunden sind und die Daten in einer Detailansicht anzeigen. Wir wollen erkennen, ob der Benutzer \u00c4nderungen an einem Datensatz vorgenommen hat und in Abh\u00e4ngigkeit davon eine R\u00fcckg\u00e4ngig-Schaltfl\u00e4che aktivieren oder deaktivieren. Durch einen Klick auf die Schaltfl\u00e4che sollen die vorherigen Werte wiederhergestellt werden. Wie das gelingt, zeigt der vorliegende Beitrag.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/aenderungen_erkennen_und_verwerfen\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Entity Framework: Der ChangeTracker<\/h3>\n<p>Wenn Sie Daten etwa aus den Tabellen einer Datenbank in ein Entity Data Model geladen haben, finden Sie dort einige Funktionen f\u00fcr den Umgang mit den enthaltenen Daten vor. Ein sehr wichtiges Element ist dabei der ChangeTracker. Auch wenn Sie mit der SaveChanges-Methode automatisch alle \u00c4nderungen im Entity Data Model erkennen und diese in die Datenbank \u00fcbertragen k\u00f6nnen, so treten doch F\u00e4lle auf, in denen Sie zuvor pr\u00fcfen wollen, welche \u00c4nderungen \u00fcberhaupt im Entity Data Model vorgenommen wurden \u2013 und ob diese in die Datenbank \u00fcbernommen oder vielleicht sogar verworfen werden sollen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Entity_Framework_Der_ChangeTracker\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Detailformulare mit Combo, Checkbox und Button<\/h3>\n<p>Im Artikel \u00bbAccess zu WPF: Detailformulare mit Textfeldern\u00ab schauen wir uns an, wie die programmgesteuerten M\u00f6glichkeiten aussehen, um Formulare automatisch als WPF-Fenster oder -Seiten abzubilden. Damit haben wir einfache Detailformulare samt Textfeldern und Datenbindung unter WPF abgebildet. Nun wollen wir einen Schritt weitergehen und uns um weitere Steuer\u00adelemente wie etwa Kombinationsfelder und Kontrollk\u00e4stchen k\u00fcmmern. Au\u00dferdem wollen wir noch Schaltfl\u00e4chen zum Bl\u00e4ttern in den Datens\u00e4tzen sowie zum Anlegen neuer Datens\u00e4tze hinzuf\u00fcgen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Detailformulare_mit_Combo_Checkbox_und_Button\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Access zu WPF: Validierung und Navigation<\/h3>\n<p>Im Artikel \u00bbAccess zu WPF: Detailformulare mit Combo, Checkbox und Button\u00ab haben wir gezeigt, wie Sie die in Formularen enthaltenen gebundenen Steuer\u00adelemente wie Kombinationsfelder und Kontrollk\u00e4stchen sowie Schaltfl\u00e4chen in WPF-Fenster \u00fcbertragen. In diesem Artikel wollen wir uns ansehen, wie Sie einem WPF-Fenster auf Basis eines Access-Detailformulars eine Validierung und Navigationsschaltfl\u00e4chen hinzuf\u00fcgen. Die notwendigen Techniken haben wir bereits im Artikel \u00bbEDM: Bl\u00e4ttern in Datens\u00e4tzen\u00ab vorgestellt, nun integrieren wir diese in unsere VBA-Prozedur zum Erstellen des Codes f\u00fcr ein WPF-Fenster mit Navigationsschaltfl\u00e4chen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Access_zu_WPF_Validierung_und_Navigation\">Zum Artikel &#8230;<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bytes im Griff mit der Stream-Klasse: FileStream Die Stream-Klasse ist die Basisklasse f\u00fcr verschiedene Stream-Klassen wie FileStream oder MemoryStream. Streams bieten die M\u00f6glichkeit, Byte-genau schreibend wie lesend auf Daten aus Dateien, dem Arbeitsspeicher oder dem<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"yst_prominent_words":[],"class_list":["post-88022019","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/pages\/88022019","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/comments?post=88022019"}],"version-history":[{"count":0,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/pages\/88022019\/revisions"}],"wp:attachment":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/media?parent=88022019"}],"wp:term":[{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/yst_prominent_words?post=88022019"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}