{"id":46,"date":"2009-10-30T10:02:46","date_gmt":"2009-10-30T09:02:46","guid":{"rendered":"http:\/\/blog.kalmbach-software.de\/de\/2009\/10\/30\/listboxitem-template\/"},"modified":"2009-11-27T13:29:51","modified_gmt":"2009-11-27T12:29:51","slug":"listboxitem-template","status":"publish","type":"post","link":"http:\/\/blog.kalmbach-software.de\/de\/2009\/10\/30\/listboxitem-template\/","title":{"rendered":"ListBoxItem Template&#8230;"},"content":{"rendered":"<p>Wir haben hier f\u00fcr die ListBox ein eigenes Template gemacht, dass eben alle ListBoxen bei uns in der Anwendung gleich aussehen&#8230; dabei haben wir einfach das Beispiel aus der MSDN verwendet: <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/ms750821.aspx\">ListBoxItem ControlTemplate Example<\/a><\/p>\n<p>Eigentlich sollte man ja meinen, dass dies Beispiel zumindest einigerma\u00dfen funktioniert&#8230; leider weit gefehlt&#8230;<\/p>\n<p>Das Problem ist: Sobald wir ein eigenes DataTemplate f\u00fcr spezielle Daten gemacht haben, hat ein Klick auf ein Element nur dann reagiert, wenn entweder genau auf den Rahmen des Items geklickt wurde oder genau auf den Text:<br \/>\n<img decoding=\"async\" src=\"http:\/\/blog.kalmbachnet.de\/files\/ItemListBox1.png\" alt=\"ListBoxItem\" \/><\/p>\n<p>Es ist also relativ schwer z.B. das &#8220;!&#8221; genau zu treffen&#8230;wir haben ewig gesucht, bis wir endlich den Grund gefunden haben&#8230; (dank Franks Unterst\u00fctzung haben wir es mittels <a href=\"http:\/\/www.blois.us\/Snoop\/\">Snoop<\/a> und der Event-Ansicht gefunden): Der Border in dem ControlTemplate hat keine Hintergundfarbe. Somit ist der Border &#8220;durchsichtig&#8221; (bzw. &#8220;x:Null&#8221;), was dazu f\u00fchrt, dass ein Klick auf den Border nicht vom Border verarbeitet wird, sondern vom darunterliegenden Scroll-Container&#8230; und der macht nat\u00fcrlich hier nichts damit&#8230;<br \/>\n<a href=\"http:\/\/blog.kalmbachnet.de\/files\/WPF_ListBox1_ControlTemplate.zip\">Hier ist auch ein Beispielprojekt (VS2008), damit man es mal selber probieren kann.<\/a><\/p>\n<p>F\u00fcr uns jetzt mal die L\u00f6sung: Wir setzen einfach die Hintergrundfarbe des Borders des ControlTemplates auf &#8220;Transparent&#8221;, dann wirken sich jetzt \u00fcberall die Klicks auf die ListBox aus&#8230; danke an Hendrik f\u00fcr diesen Hinweis!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wir haben hier f\u00fcr die ListBox ein eigenes Template gemacht, dass eben alle ListBoxen bei uns in der Anwendung gleich aussehen&#8230; dabei haben wir einfach das Beispiel aus der MSDN verwendet: ListBoxItem ControlTemplate Example Eigentlich sollte man ja meinen, dass dies Beispiel zumindest einigerma\u00dfen funktioniert&#8230; leider weit gefehlt&#8230; Das Problem ist: Sobald wir ein eigenes [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,5],"tags":[],"class_list":["post-46","post","type-post","status-publish","format-standard","hentry","category-alles-uber-dotnet-programmierung","category-wpf"],"_links":{"self":[{"href":"http:\/\/blog.kalmbach-software.de\/de\/wp-json\/wp\/v2\/posts\/46","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.kalmbach-software.de\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.kalmbach-software.de\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.kalmbach-software.de\/de\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.kalmbach-software.de\/de\/wp-json\/wp\/v2\/comments?post=46"}],"version-history":[{"count":0,"href":"http:\/\/blog.kalmbach-software.de\/de\/wp-json\/wp\/v2\/posts\/46\/revisions"}],"wp:attachment":[{"href":"http:\/\/blog.kalmbach-software.de\/de\/wp-json\/wp\/v2\/media?parent=46"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.kalmbach-software.de\/de\/wp-json\/wp\/v2\/categories?post=46"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.kalmbach-software.de\/de\/wp-json\/wp\/v2\/tags?post=46"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}