{"id":55000171,"date":"2019-04-01T00:00:00","date_gmt":"2020-03-27T19:36:50","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=171"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"WPF_DataTrigger_und_MultiDataTrigger","status":"publish","type":"post","link":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/","title":{"rendered":"WPF: DataTrigger und MultiDataTrigger"},"content":{"rendered":"<p><b>Um die Eigenschaftswerte von Steuerelementen abh&auml;ngig von den Werten anderer Steuer-elemente oder auch von Eigenschaften einzustellen, verwenden Sie Data-Trigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis-ein-satz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k&ouml;nnen.<\/b><\/p>\n<h2>Eigenschaften per VB einstellen<\/h2>\n<p>Wer von Access kommt, kennt nur zwei Methoden, um die Eigenschaften eines Steuerelements einzustellen: &uuml;ber das Eigenschaftsfenster oder per VBA. Beide Methoden sind beliebig miteinander kombinierbar. Sie k&ouml;nnen einen initialen Wert &uuml;ber das Eigenschaftsfenster einstellen oder dies per VBA erledigen, etwa in der Ereignisprozedur <b>Form_Load <\/b>des Formulars. Nachtr&auml;gliche Einstellungen sind allerdings nur per VBA m&ouml;glich.<\/p>\n<p>Unter WPF\/VB gibt es umfangreichere M&ouml;glichkeiten. Sie k&ouml;nnen eine Eigenschaft nat&uuml;rlich explizit im WPF-Code eines Elements festlegen &#8211; um etwa ein Steuer-element gleich beim Anzeigen des Fensters zu deaktivieren, stellen Sie die Eigenschaft einfach wie folgt ein (siehe Fenster <b>EigenschaftPerWPF.xaml<\/b>):<\/p>\n<pre>&lt;Button x:Name=\"btnBeimAnzeigenDeaktiviert\" ... IsEnabled=\"False\" \/&gt;<\/pre>\n<p>Sie k&ouml;nnen dem Fenster dann zwei Schaltfl&auml;chen hinzuf&uuml;gen, mit deren Ereignismethoden f&uuml;r das Attribut <b>Click <\/b>die Eigenschaft <b>IsEnabled <\/b>auf <b>True <\/b>oder <b>False <\/b>eingestellt wird:<\/p>\n<pre><span style=\"color:blue;\">Private Sub <\/span>btnAktivieren_Click(sender<span style=\"color:blue;\"> As Object<\/span>, e<span style=\"color:blue;\"> As <\/span>RoutedEventArgs)\r\n     btnBeimAnzeigenDeaktiviert.IsEnabled = <span style=\"color:blue;\">True<\/span>\r\n<span style=\"color:blue;\">End Sub<\/span>\r\n<span style=\"color:blue;\">Private Sub <\/span>btnDeaktivieren_Click(sender<span style=\"color:blue;\"> As Object<\/span>, e<span style=\"color:blue;\"> As <\/span>RoutedEventArgs)\r\n     btnBeimAnzeigenDeaktiviert.IsEnabled = <span style=\"color:blue;\">False<\/span>\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Das Ergebnis sieht dann wie in Bild 1 aus. <\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2019_02\/pic_171_001.png\" alt=\"Aktivieren und deaktivieren per Schaltfl&auml;che und VB-Prozedur\" width=\"424,7115\" height=\"226,8582\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Aktivieren und deaktivieren per Schaltfl&auml;che und VB-Prozedur<\/span><\/b><\/p>\n<p>Die n&auml;chste M&ouml;glichkeit ist, diese Eigenschaft an eine &ouml;ffentliche Eigenschaft im Code behind-Modul zu koppeln.<\/p>\n<h2>Eigenschaft an Code behind-Eigenschaft koppeln<\/h2>\n<p>Sie k&ouml;nnen die Eigenschaft <b>IsEnabled <\/b>auch an eine &ouml;ffentlich deklarierte Eigenschaft im Code behind-Modul koppeln (siehe Fenster <b>EigenschaftPerCodeBehind.xaml<\/b>). Man k&ouml;nnte naiverweise meinen, dass folgender Code im Code behind-Modul ausreicht:<\/p>\n<pre><span style=\"color:blue;\">Public Property <\/span>Aktiviert<span style=\"color:blue;\"> As Boolean<\/span>\r\n<span style=\"color:blue;\">Private Sub <\/span>btnAktivieren_Click(sender<span style=\"color:blue;\"> As Object<\/span>, e<span style=\"color:blue;\"> As <\/span>RoutedEventArgs)\r\n     Aktiviert = <span style=\"color:blue;\">True<\/span>\r\n<span style=\"color:blue;\">End Sub<\/span>\r\n<span style=\"color:blue;\">Private Sub <\/span>btnDeaktivieren_Click(sender<span style=\"color:blue;\"> As Object<\/span>, e<span style=\"color:blue;\"> As <\/span>RoutedEventArgs)\r\n     Aktiviert = <span style=\"color:blue;\">False<\/span>\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Dabei wollen wir voraussetzen, dass die Schaltfl&auml;che &uuml;ber die Eigenschaft <b>IsEnabled <\/b>an die Eigenschaft <b>Aktiviert <\/b>gebunden ist:<\/p>\n<pre>&lt;Button x:Name=\"btnBeimAnzeigenDeaktiviert\" Content=\"Beim Anzeigen deaktiviert\" IsEnabled=\"{Binding Aktiviert}\" ... \/&gt;<\/pre>\n<p>Das reicht allerdings nicht aus, denn beim Anklicken der beiden Schaltfl&auml;chen <b>btnAktivieren <\/b>und <b>btnDeaktivieren <\/b>geschieht nichts. Das &auml;ndert sich auch nicht, wenn wir die Schnittstelle <b>INotifyPropertyChanged<\/b> implementieren, die notwendig ist, um Aktualisierungen von Eigenschaften &uuml;ber die Bindung in die Benutzeroberfl&auml;che zu &uuml;bertragen. Zus&auml;tzlich ben&ouml;tigen wir n&auml;mlich auch noch eine Konstruktor-Methode, die beim Erstellen des Fensters aufgerufen wird und dem WPF-Fenster mitteilt, dass es an die Eigenschaften des Code behind-Moduls gebunden werden soll. Insgesamt sieht der Code f&uuml;r das Code behind-Modul nun wie folgt aus. Als Erstes f&uuml;gen wir einen Verweis auf den Namespace <b>System.ComponentModel <\/b>hinzu, den wir f&uuml;r die <b>INotifyPropertyChanged<\/b>-Schnittstelle ben&ouml;tigen:<\/p>\n<pre>Imports System.ComponentModel<\/pre>\n<p>Dann f&uuml;gen wir die <b>Implements<\/b>-Anweisung zur Implementierung der Schnittstelle hinzu sowie die Eigenschaft <b>Aktiviert<\/b>, in der wir die Schnittstelle nutzen wollen:<\/p>\n<pre><span style=\"color:blue;\">Public Class<\/span> EigenschaftPerCodeBehind\r\n     Implements INotifyPropertyChanged\r\n     <span style=\"color:blue;\">Private <\/span>_Aktiviert<span style=\"color:blue;\"> As Boolean<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Event PropertyChanged<span style=\"color:blue;\"> As <\/span>PropertyChangedEventHandler Implements INotifyPropertyChanged.PropertyChanged\r\n     <span style=\"color:blue;\">Public <\/span>Property Aktiviert<span style=\"color:blue;\"> As Boolean<\/span>\r\n         Get\r\n             Return _Aktiviert\r\n         End Get\r\n         <span style=\"color:blue;\">Set<\/span>\r\n             _Aktiviert = Value\r\n             RaiseEvent PropertyChanged(Me, <span style=\"color:blue;\">New<\/span> PropertyChangedEventArgs(\"Aktiviert\"))\r\n         End <span style=\"color:blue;\">Set<\/span>\r\n     End Property<\/pre>\n<p>Fehlt noch die Konstruktor-Anweisung, in der wir mit <b>DataContext = Me <\/b>angeben, dass die &ouml;ffentlichen Eigenschaften des Code behind-Moduls vom XAML-Code aus gebunden werden k&ouml;nnen:<\/p>\n<pre>     <span style=\"color:blue;\">Public <\/span>Sub New()\r\n         InitializeComponent()\r\n         DataContext = Me\r\n         Aktiviert = <span style=\"color:blue;\">False<\/span>\r\n     End Sub\r\n<span style=\"color:blue;\">End Class<\/span><\/pre>\n<p>Das allein reicht allerdings noch nicht aus. Wir m&uuml;ssen auch noch die Eigenschaft <b>IsEnabled=&#8221;{Binding Aktiviert}&#8221; <\/b>ersetzen, denn f&uuml;r die Bindung an eine Eigenschaft einer anderen Klasse ist ein DataTrigger n&ouml;tig. Diesen hinterlegen wir wie folgt f&uuml;r die Schaltfl&auml;che <b>btnAktivierenDeaktivieren<\/b>:<\/p>\n<pre>&lt;Button x:Name=\"btnAktivierenDeaktivieren\" Content=\"Aktivieren\/Deaktivieren\" HorizontalAlignment=\"Left\" Height=\"38\"         Margin=\"28,22,0,0\" VerticalAlignment=\"Top\" Width=\"180\"&gt;\r\n     &lt;Button.Style&gt;\r\n         &lt;Style TargetType=\"{x:Type Button}\"&gt;\r\n             &lt;Setter Property=\"IsEnabled\" Value=\"False\"&gt;&lt;\/Setter&gt;\r\n             &lt;Style.Triggers&gt;\r\n                 &lt;DataTrigger Binding=\"{Binding Aktiviert}\" Value=\"True\"&gt;\r\n                     &lt;Setter Property=\"IsEnabled\" Value=\"True\" \/&gt;\r\n                 &lt;\/DataTrigger&gt;\r\n             &lt;\/Style.Triggers&gt;\r\n         &lt;\/Style&gt;\r\n     &lt;\/Button.Style&gt;\r\n&lt;\/Button&gt;<\/pre>\n<p>Hier sind gleich mehrere wichtige Informationen untergebracht:<\/p>\n<ul>\n<li>Mit dem ersten <b>Setter<\/b>-Element legen wir f&uuml;r die Eigenschaft <b>IsEnabled <\/b>den Wert <b>False <\/b>als initialen Wert fest. Das ist die Methode, den Standardwert zu definieren, wenn Sie einen DataTrigger verwenden.<\/li>\n<li>Im <b>DataTrigger<\/b>-Element definieren wir, welchen Wert wir untersuchen wollen, hier die gebundene Eigenschaft <b>Aktiviert<\/b> f&uuml;r das Attribut <b>Property<\/b>, und mit welchem Wert wir den gelieferten Wert vergleichen wollen &#8211; hier <b>True<\/b> f&uuml;r das Attribut <b>Value<\/b>. Ist diese Bedingung erf&uuml;llt, also ist der Wert der Eigenschaft <b>Aktiviert <\/b>gleich <b>True<\/b>, wird die im untergeordneten Setter-Element angegebene Eigenschaft mit dem dort angegebenen Wert gef&uuml;llt.<\/li>\n<\/ul>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Visual Basic Entwickler<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000\"><a style=\"color: #ff0000\" href=\"https:\/\/shop.minhorst.com\/magazine\/363\/visual-basic-entwickler-jahresabonnement?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000\">Danach greifen Sie sofort auf <strong>alle rund 200 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000171\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Password<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Remember me<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/data\/wp\/v2\/posts\/55000171?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000171\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"9e1c9c9e66\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Login\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Um die Eigenschaftswerte von Steuerelementen abh&auml;ngig von den Werten anderer Steuer-elemente oder auch von Eigenschaften einzustellen, verwenden Sie Data-Trigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis-ein-satz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k&ouml;nnen.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","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":""},"categories":[66022019,662019,44000003],"tags":[],"yst_prominent_words":[],"class_list":["post-55000171","post","type-post","status-publish","format-standard","hentry","category-66022019","category-662019","category-WPFGrundlagen"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.8 - aioseo.com -->\n\t<meta name=\"description\" content=\"Um die Eigenschaftswerte von Steuerelementen abh\u00e4ngig von den Werten anderer Steuer-elemente oder auch von Eigenschaften einzustellen, verwenden Sie Data-Trigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis-ein-satz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k\u00f6nnen.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Andr\u00e9 Minhorst\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.8\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Visual Basic Entwickler - Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"WPF: DataTrigger und MultiDataTrigger - Visual Basic Entwickler\" \/>\n\t\t<meta property=\"og:description\" content=\"Um die Eigenschaftswerte von Steuerelementen abh\u00e4ngig von den Werten anderer Steuer-elemente oder auch von Eigenschaften einzustellen, verwenden Sie Data-Trigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis-ein-satz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k\u00f6nnen.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-03-27T19:36:50+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"-001-11-30T00:00:00+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"WPF: DataTrigger und MultiDataTrigger - Visual Basic Entwickler\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Um die Eigenschaftswerte von Steuerelementen abh\u00e4ngig von den Werten anderer Steuer-elemente oder auch von Eigenschaften einzustellen, verwenden Sie Data-Trigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis-ein-satz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k\u00f6nnen.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#blogposting\",\"name\":\"WPF: DataTrigger und MultiDataTrigger - Visual Basic Entwickler\",\"headline\":\"WPF: DataTrigger und MultiDataTrigger\",\"author\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"..\\\/fileadmin\\\/_temp_\\\/2019_02\\\/pic_171_001.png\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#articleImage\"},\"datePublished\":\"2019-04-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"inLanguage\":\"de-DE\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#webpage\"},\"articleSection\":\"2\\\/2019, 2019, WPF-Grundlagen\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vbentwickler.de\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2019\\\/#listItem\",\"name\":\"2019\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2019\\\/#listItem\",\"position\":2,\"name\":\"2019\",\"item\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2019\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2019\\\/2\\\/2019\\\/#listItem\",\"name\":\"2\\\/2019\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2019\\\/2\\\/2019\\\/#listItem\",\"position\":3,\"name\":\"2\\\/2019\",\"item\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2019\\\/2\\\/2019\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#listItem\",\"name\":\"WPF: DataTrigger und MultiDataTrigger\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2019\\\/#listItem\",\"name\":\"2019\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#listItem\",\"position\":4,\"name\":\"WPF: DataTrigger und MultiDataTrigger\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2019\\\/2\\\/2019\\\/#listItem\",\"name\":\"2\\\/2019\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\",\"name\":\"Datenbankentwickler\",\"description\":\"Das Magazin f\\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/cropped-header_vbe-1.png\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#organizationLogo\",\"width\":664,\"height\":225},\"image\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Andr\\u00e9 Minhorst\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#webpage\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/\",\"name\":\"WPF: DataTrigger und MultiDataTrigger - Visual Basic Entwickler\",\"description\":\"Um die Eigenschaftswerte von Steuerelementen abh\\u00e4ngig von den Werten anderer Steuer-elemente oder auch von Eigenschaften einzustellen, verwenden Sie Data-Trigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis-ein-satz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k\\u00f6nnen.\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/WPF_DataTrigger_und_MultiDataTrigger\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"datePublished\":\"2019-04-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#website\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/\",\"name\":\"Datenbankentwickler\",\"description\":\"Das Magazin f\\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"WPF: DataTrigger und MultiDataTrigger - Visual Basic Entwickler","description":"Um die Eigenschaftswerte von Steuerelementen abh\u00e4ngig von den Werten anderer Steuer-elemente oder auch von Eigenschaften einzustellen, verwenden Sie Data-Trigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis-ein-satz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k\u00f6nnen.","canonical_url":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#blogposting","name":"WPF: DataTrigger und MultiDataTrigger - Visual Basic Entwickler","headline":"WPF: DataTrigger und MultiDataTrigger","author":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"publisher":{"@id":"https:\/\/vbentwickler.de\/#organization"},"image":{"@type":"ImageObject","url":"..\/fileadmin\/_temp_\/2019_02\/pic_171_001.png","@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#articleImage"},"datePublished":"2019-04-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00","inLanguage":"de-DE","mainEntityOfPage":{"@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#webpage"},"isPartOf":{"@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#webpage"},"articleSection":"2\/2019, 2019, WPF-Grundlagen"},{"@type":"BreadcrumbList","@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/vbentwickler.de#listItem","position":1,"name":"Home","item":"https:\/\/vbentwickler.de","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2019\/#listItem","name":"2019"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2019\/#listItem","position":2,"name":"2019","item":"https:\/\/vbentwickler.de\/category\/2019\/","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2019\/2\/2019\/#listItem","name":"2\/2019"},"previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2019\/2\/2019\/#listItem","position":3,"name":"2\/2019","item":"https:\/\/vbentwickler.de\/category\/2019\/2\/2019\/","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#listItem","name":"WPF: DataTrigger und MultiDataTrigger"},"previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2019\/#listItem","name":"2019"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#listItem","position":4,"name":"WPF: DataTrigger und MultiDataTrigger","previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2019\/2\/2019\/#listItem","name":"2\/2019"}}]},{"@type":"Organization","@id":"https:\/\/vbentwickler.de\/#organization","name":"Datenbankentwickler","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","url":"https:\/\/vbentwickler.de\/","logo":{"@type":"ImageObject","url":"https:\/\/vbentwickler.de\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#organizationLogo","width":664,"height":225},"image":{"@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author","url":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","width":96,"height":96,"caption":"Andr\u00e9 Minhorst"}},{"@type":"WebPage","@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#webpage","url":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/","name":"WPF: DataTrigger und MultiDataTrigger - Visual Basic Entwickler","description":"Um die Eigenschaftswerte von Steuerelementen abh\u00e4ngig von den Werten anderer Steuer-elemente oder auch von Eigenschaften einzustellen, verwenden Sie Data-Trigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis-ein-satz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k\u00f6nnen.","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/vbentwickler.de\/#website"},"breadcrumb":{"@id":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/#breadcrumblist"},"author":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"creator":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"datePublished":"2019-04-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00"},{"@type":"WebSite","@id":"https:\/\/vbentwickler.de\/#website","url":"https:\/\/vbentwickler.de\/","name":"Datenbankentwickler","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","inLanguage":"de-DE","publisher":{"@id":"https:\/\/vbentwickler.de\/#organization"}}]},"og:locale":"de_DE","og:site_name":"Visual Basic Entwickler - Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","og:type":"article","og:title":"WPF: DataTrigger und MultiDataTrigger - Visual Basic Entwickler","og:description":"Um die Eigenschaftswerte von Steuerelementen abh\u00e4ngig von den Werten anderer Steuer-elemente oder auch von Eigenschaften einzustellen, verwenden Sie Data-Trigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis-ein-satz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k\u00f6nnen.","og:url":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/","og:image":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","og:image:secure_url":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","article:published_time":"2020-03-27T19:36:50+00:00","article:modified_time":"-001-11-30T00:00:00+00:00","twitter:card":"summary_large_image","twitter:title":"WPF: DataTrigger und MultiDataTrigger - Visual Basic Entwickler","twitter:description":"Um die Eigenschaftswerte von Steuerelementen abh\u00e4ngig von den Werten anderer Steuer-elemente oder auch von Eigenschaften einzustellen, verwenden Sie Data-Trigger oder MultiDataTrigger. Wir schauen uns in diesem Artikel die Grundlagen zu diesen Elementen an und zeigen anhand einiger Beispiele, was beim Praxis-ein-satz zu beachten ist. Dabei betrachten wir auch, wie Sie DataTrigger auf Basis von Eigenschaften im Code behind-Modul des WPF-Objekts verwenden k\u00f6nnen.","twitter:image":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png"},"aioseo_meta_data":{"post_id":"55000171","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2024-01-30 15:58:33","updated":"2026-05-16 08:35:53","ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\/category\/2019\/\" title=\"2019\">2019<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\/category\/2019\/2\/2019\/\" title=\"2\/2019\">2\/2019<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tWPF: DataTrigger und MultiDataTrigger\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/vbentwickler.de"},{"label":"2019","link":"https:\/\/vbentwickler.de\/category\/2019\/"},{"label":"2\/2019","link":"https:\/\/vbentwickler.de\/category\/2019\/2\/2019\/"},{"label":"WPF: DataTrigger und MultiDataTrigger","link":"https:\/\/vbentwickler.de\/WPF_DataTrigger_und_MultiDataTrigger\/"}],"_links":{"self":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000171","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/comments?post=55000171"}],"version-history":[{"count":0,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000171\/revisions"}],"wp:attachment":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/media?parent=55000171"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/categories?post=55000171"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/tags?post=55000171"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/yst_prominent_words?post=55000171"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}