{"id":55000482,"date":"2020-04-01T00:00:00","date_gmt":"2020-07-17T19:18:44","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=482"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"TreeView_Kategorien_per_Drag_and_Drop_verwalten","status":"publish","type":"post","link":"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html","title":{"rendered":"TreeView: Kategorien per Drag and Drop verwalten"},"content":{"rendered":"<p class='introduction'>Um die in einem TreeView-Steuerelement angezeigten Daten am einfachsten umzuorganisieren, ist Drag and Drop die einfachste Methode. Der Benutzer kann so eine Kategorie von der einen &uuml;bergeordneten Kategorie zu einer anderen verschieben, Hauptkategorien anderen Kategorien unterordnen oder Unterkategorien zu Hauptkategorien machen. Dieser Artikel zeigt, wie Sie das Drag and Drop in unser Beispiel zur Verwaltung von Kategorien und Unterkategorien einbauen.<\/p>\n<h2>Beispieldatenbank<\/h2>\n<p>Die Beispiele dieses Artikels finden Sie in der Datenbank <b>2001_KategorienDragAndDrop.accdb<\/b>.<\/p>\n<h2>Voraussetzungen<\/h2>\n<p>Damit Drag and Drop wie hier beschrieben funktioniert, m&uuml;ssen Sie zwei Einstellungen f&uuml;r das <b>TreeView<\/b>-Steuerelement vornehmen. Dies erledigen wir in der Beispieldatenbank in der Prozedur <b>Form_Load<\/b>:<\/p>\n<pre><span style=\"color:blue;\">Private Sub <\/span>Form_Load()\r\n    <span style=\"color:blue;\">Set<\/span> m_TreeView = Me!ctlTreeview.Object\r\n    <span style=\"color:blue;\">With<\/span> objTreeView\r\n        ...\r\n        .OLEDragMode = ccOLEDragAutomatic\r\n        .OLEDropMode = ccOLEDropManual\r\n    End <span style=\"color:blue;\">With<\/span>\r\n    ...\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Wir verwenden das TreeView, das wir im Artikel Kategorien per TreeView verwalten erstellt haben, als Basis f&uuml;r die Beispiele dieses Artikels (siehe Bild 1).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_482_001.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_482_001.png\" alt=\"Formular-Entwurf unseres Beispielformulars\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 1: Formular-Entwurf unseres Beispielformulars<\/p>\n<h2>Schritte im Drag and Drop-Vorgang<\/h2>\n<p>Der Start des Drag and Drop-Vorgangs erfolgt, wenn der Benutzer die linke Maustaste auf einem Element des <b>TreeView<\/b>-Steuerelements niederdr&uuml;ckt und das angeklickte Element dann mit der Maus an eine andere Stelle zieht. In diesem Moment wird das Ereignis <b>OLEStartDrag <\/b>ausgel&ouml;st.<\/p>\n<p>Zu diesem Zeitpunkt k&ouml;nnen Sie erfassen, welches Element der Benutzer ziehen will. Solange er das Element nicht losl&auml;sst, wird st&auml;ndig das Ereignis <b>OLE-Drag-Over <\/b>ausgel&ouml;st. Das k&ouml;nnen Sie dazu nutzen, die gerade &uuml;berfahrenen potenziellen Ziele zum Loslassen des Elements optisch hervorzuheben.<\/p>\n<p>Wenn der Benutzer die Maus mit dem gezogenen Element schlie&szlig;lich zur Zielposition bewegt hat und er die Maustaste losl&auml;sst, feuert das Ereignis <b>OLEDragDrop<\/b>. Hier ist dann die Gelegenheit, zu ermitteln, auf welches Element der Benutzer das Element fallen l&auml;sst und notwendige Schritte durchzuf&uuml;hren. Operationen wie etwa das &auml;ndern der &uuml;bergeordneten Kategorie erfolgen nicht automatisch nur durch das Ziehen eines Elements an eine andere Position.<\/p>\n<h2>Ereignisprozeduren anlegen<\/h2>\n<p>Wir wollen zun&auml;chst die drei Ereignisprozeduren anlegen, die wir f&uuml;r das Implementieren der Drag and Drop-Funktion ben&ouml;tigen. Dazu w&auml;hlen Sie im Klassenmodul des Formulars oben im linken Kombinationsfeld den Eintrag mit dem Namen des Steuerelements aus, hier also <b>ctlTreeView<\/b>. Das rechte Kombinationsfeld zeigt dann alle Ereignisse an, die f&uuml;r dieses Steuer-element zur Verf&uuml;gung stehen (siehe Bild 2).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_482_002.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_482_002.png\" alt=\"Anlegen der Ereignisprozeduren\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 2: Anlegen der Ereignisprozeduren<\/p>\n<p>W&auml;hlen Sie hier nacheinander die Eintr&auml;ge <b>OLEDragDrop<\/b>, <b>OLEDragOver <\/b>und <b>OLEStartDrag <\/b>auf, um die drei Ereignisprozeduren anzulegen.<\/p>\n<h2>Vorarbeit f&uuml;r Drag and Drop<\/h2>\n<p>Um einen Drag and Drop sauber einzuleiten, m&uuml;ssen Sie beim Start des Vorgangs genau ermitteln, welches Element der Benutzer ziehen will. Normalerweise ermitteln Sie das angeklickte Element mit der Eigenschaft <b>SelectedItem<\/b>. Das geschieht aber erst nach dem Loslassen der Maustaste. Beim Drag and Drop dr&uuml;cken Sie aber die Maustaste herunter und ziehen dann das Element an die gew&uuml;nschte Stelle. Das hei&szlig;t, dass das zu bewegende Element nicht zuverl&auml;ssig markiert ist. Es kann auch sein, dass das Element, das zuvor markiert war, nun von <b>Selected-Item <\/b>geliefert wird.<\/p>\n<p>Sie m&uuml;ssen also entweder vor dem Drag and Drop einmal einen vollst&auml;ndigen Mausklick auf das Element t&auml;tigen, um dieses zun&auml;chst sicher zu markieren. Oder Sie erg&auml;nzen unsere Prozedur, die wir im oben genannten Artikel zum Anzeigen der Kontextmen&uuml;s erstellt haben, um zwei Codezeilen. Diese Prozedur wird durch das Ereignis <b>MouseDown <\/b>ausgel&ouml;st (siehe Listing 1). Wir stellen hier die Eigenschaft <b>SelectedItem <\/b>auf das Element ein, das wir mit der Eigenschaft <b>HitTest <\/b>f&uuml;r die mit den Parametern <b>x <\/b>und <b>y <\/b>gelieferten Koordinaten ermitteln. <b>HitTest(x,y)<\/b> liefert das Element, das sich beim Herunterdr&uuml;cken der Maustaste genau unter dem Mauszeiger befindet. <\/p>\n<pre><span style=\"color:blue;\">Private Sub <\/span>ctlTreeView_MouseDown(ByVal Button<span style=\"color:blue;\"> As Integer<\/span>, ByVal Shift<span style=\"color:blue;\"> As Integer<\/span>, ByVal x<span style=\"color:blue;\"> As Long<\/span>, ByVal y<span style=\"color:blue;\"> As Long<\/span>)\r\n     ...\r\n     Select Case Button\r\n         <span style=\"color:blue;\">Case <\/span>acRightButton\r\n             ...\r\n         <span style=\"color:blue;\">Case <\/span>acLeftButton\r\n             objTreeView.SelectedItem = objTreeView.HitTest(x, y)\r\n     <span style=\"color:blue;\">End Select<\/span>\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p class='imagetext'>Listing 1: Markieren des angeklickten Elements<\/p>\n<p>Damit ausgestattet ist nun sicher das Element markiert, das sich beim Start des Drag and Drop-Vorgangs unter dem Mauszeiger befindet.<\/p>\n<h2>Das Data-Objekt<\/h2>\n<p>Wenn Sie sich die Signaturen der drei Ereignisprozeduren ansehen, erkennen Sie einen gemeinsamen Parameter, n&auml;mlich <b>Data<\/b>.<\/p>\n<p>Dies ist das Herzst&uuml;ck des Drag and Drop-Vorgangs. Mit ihm k&ouml;nnen Sie n&auml;mlich beim Start des Ziehens eine Information festlegen, die Sie beim Fallenlassen des Elements noch abfragen k&ouml;nnen. In unserem Fall nutzen wir dies, um den Wert der Eigenschaft <b>Key <\/b>des gezogenen <b>Node<\/b>-Elements zu speichern &#8211; und somit die eindeutige Identifizierung dieses Elements. Das <b>Data<\/b>-Objekt stellt zum Speichern der Information die Methode <b>SetData <\/b>zur Verf&uuml;gung, mit der Sie den Inhalt und den Typ des Inhalts festlegen k&ouml;nnen.<\/p>\n<p>Auch die Prozeduren f&uuml;r die Ereignisse <b>OLEDragOver<\/b> und <b>OLEDragDrop<\/b> stellen den Data-Parameter zur Verf&uuml;gung. Hier wollen Sie den enthaltenen Wert eher abfragen als setzen, deshalb stellt das <b>Data<\/b>-Objekt die Funktion <b>GetData <\/b>zur Verf&uuml;gung.<\/p>\n<p>Diese erwartet den Typ der zu ermittelnden Information, hier durch die Konstante <b>ccCFText <\/b>gekennzeichnet.<\/p>\n<h2>Starten des Drag and Drop-Vorgangs<\/h2>\n<p>Damit steigen wir in die beim Ziehen des Mauszeigers bei gedr&uuml;ckter Maustaste ausgel&ouml;ste Ereignisprozedur ein, n&auml;mlich <b>ctlTreeView_OLEStartDrag<\/b> (siehe Listing 2). Hier stellen wir zun&auml;chst die Variable <b>objNode <\/b>auf das aktuell ausgew&auml;hlte Element ein, das wir mit <b>objTreeView.SelectedItem <\/b>ermitteln. Ist <b>objNode <\/b>danach leer, beenden wir die Prozedur mit der <b>Exit Sub<\/b>-Anweisung.<\/p>\n<pre><span style=\"color:blue;\">Private Sub <\/span>ctlTreeView_OLEDragOver(Data<span style=\"color:blue;\"> As Object<\/span>, Effect<span style=\"color:blue;\"> As Long<\/span>, Button<span style=\"color:blue;\"> As Integer<\/span>, Shift<span style=\"color:blue;\"> As Integer<\/span>, x<span style=\"color:blue;\"> As Single<\/span>, _\r\n         y<span style=\"color:blue;\"> As Single<\/span>, State<span style=\"color:blue;\"> As Integer<\/span>)\r\n     <span style=\"color:blue;\">Dim <\/span>strData<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">Dim <\/span>strDatatype<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">If <\/span>Data.GetFormat(ccCFText) = <span style=\"color:blue;\">False<\/span><span style=\"color:blue;\"> Then<\/span>\r\n         <span style=\"color:blue;\">Exit Sub<\/span>\r\n     <span style=\"color:blue;\">End If<\/span>\r\n     strData = Data.GetData(ccCFText)\r\n     strDatatype = <span style=\"color:blue;\">Left<\/span>(strData, 1)\r\n     Select Case strDatatype\r\n         <span style=\"color:blue;\">Case <\/span>\"k\"\r\n             <span style=\"color:blue;\">Set<\/span> objTreeView.DropHighlight = objTreeView.HitTest(x, y)\r\n     <span style=\"color:blue;\">End Select<\/span>\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p class='imagetext'>Listing 2: Diese Methode wird mehrfach w&auml;hrend des Drag and Drop ausgel&ouml;st.<\/p>\n<p>Anderenfalls leeren wir das <b>Data<\/b>-Objekt mit der <b>Clear<\/b>-Methode und weisen diesem mit der <b>SetData<\/b>-Methode einen Text zu, und zwar den Wert der Eigenschaft <b>Key <\/b>des Objekts aus <b>objNode<\/b>.<\/p>\n<p>Der zweite Parameter erh&auml;lt eine Konstante, die angibt, um welche Art von Information es sich bei dem beim Start von Drag and Drop &uuml;bergebenen Wert handelt &#8211; hier <b>ccCFText <\/b>f&uuml;r einen Text.<\/p>\n<p>Mit dem zweiten Parameter <b>AllowedEffects <\/b>k&ouml;nnen wir noch festlegen, welche Effekte sp&auml;ter erlaubt sind. Es gibt die folgenden:<\/p>\n<ul>\n<li><b>ccOLEDropEffectCopy<\/b> (<b>1<\/b>): Das Symbol f&uuml;r den Mauszeiger wird um einen Rahmen und ein Plus-Zeichen erg&auml;nzt (<b>+<\/b>).<\/li>\n<li><b>ccOLEDropEffectMove<\/b> (<b>2<\/b>): Das Symbol f&uuml;r den Mauszeiger wird um einen Rahmen erg&auml;nzt.<\/li>\n<li><b>ccOLEDropEffectNone<\/b> (<b>0<\/b>): Es wird beim Versuch, zu ziehen, keine Ver&auml;nderung des Mauszeigers angezeigt und es erfolgt auch kein Drag and Drop.<\/li>\n<li><b>ccOLEDropEffectScroll<\/b> (<b>-2.147.483.648<\/b>): Hierzu konnten wir keine Dokumentation finden.<\/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>Access &#091;basics&#093;<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/shop.minhorst.com\/magazine\/282\/access-basics?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000;\">Danach greifen Sie sofort auf <strong>alle rund 400 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:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000482\/\">\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=\"\/index.php\/data\/wp\/v2\/posts\/55000482?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:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000482\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"d3591a5fc4\"\/>\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 in einem TreeView-Steuerelement angezeigten Daten am einfachsten umzuorganisieren, ist Drag and Drop die einfachste Methode. Der Benutzer kann so eine Kategorie von der einen &uuml;bergeordneten Kategorie zu einer anderen verschieben, Hauptkategorien anderen Kategorien unterordnen oder Unterkategorien zu Hauptkategorien machen. Dieser Artikel zeigt, wie Sie das Drag and Drop in unser Beispiel zur Verwaltung von Kategorien und Unterkategorien einbauen.<\/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":[66022020,662020,44000012],"tags":[],"class_list":["post-55000482","post","type-post","status-publish","format-standard","hentry","category-66022020","category-662020","category-Steuerelemente"],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v15.9.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>TreeView: Kategorien per Drag and Drop verwalten - Access [basics]<\/title>\n<meta name=\"description\" content=\"Um die in einem TreeView-Steuerelement angezeigten Daten am einfachsten umzuorganisieren, ist Drag and Drop die einfachste Methode. Der Benutzer kann so eine Kategorie von der einen \u00fcbergeordneten Kategorie zu einer anderen verschieben, Hauptkategorien anderen Kategorien unterordnen oder Unterkategorien zu Hauptkategorien machen. Dieser Artikel zeigt, wie Sie das Drag and Drop in unser Beispiel zur Verwaltung von Kategorien und Unterkategorien einbauen.\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"TreeView: Kategorien per Drag and Drop verwalten - Access [basics]\" \/>\n<meta property=\"og:description\" content=\"Um die in einem TreeView-Steuerelement angezeigten Daten am einfachsten umzuorganisieren, ist Drag and Drop die einfachste Methode. Der Benutzer kann so eine Kategorie von der einen \u00fcbergeordneten Kategorie zu einer anderen verschieben, Hauptkategorien anderen Kategorien unterordnen oder Unterkategorien zu Hauptkategorien machen. Dieser Artikel zeigt, wie Sie das Drag and Drop in unser Beispiel zur Verwaltung von Kategorien und Unterkategorien einbauen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html\" \/>\n<meta property=\"og:site_name\" content=\"Access [basics]\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-17T19:18:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"-0001-11-30T00:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/..\/tl_files\/images\/pic_482_001.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\">\n\t<meta name=\"twitter:data1\" content=\"15\u00a0Minuten\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/access-basics.de\/#website\",\"url\":\"https:\/\/access-basics.de\/\",\"name\":\"Access [basics]\",\"description\":\"DAS ACCESS-MAGAZIN F\\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/access-basics.de\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html#primaryimage\",\"inLanguage\":\"de\",\"url\":\"..\/tl_files\/images\/pic_482_001.png\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html#webpage\",\"url\":\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html\",\"name\":\"TreeView: Kategorien per Drag and Drop verwalten - Access [basics]\",\"isPartOf\":{\"@id\":\"https:\/\/access-basics.de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html#primaryimage\"},\"datePublished\":\"2020-07-17T19:18:44+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"author\":{\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\"},\"description\":\"Um die in einem TreeView-Steuerelement angezeigten Daten am einfachsten umzuorganisieren, ist Drag and Drop die einfachste Methode. Der Benutzer kann so eine Kategorie von der einen \\u00fcbergeordneten Kategorie zu einer anderen verschieben, Hauptkategorien anderen Kategorien unterordnen oder Unterkategorien zu Hauptkategorien machen. Dieser Artikel zeigt, wie Sie das Drag and Drop in unser Beispiel zur Verwaltung von Kategorien und Unterkategorien einbauen.\",\"breadcrumb\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/\",\"url\":\"https:\/\/access-basics.de\/\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html\",\"url\":\"https:\/\/access-basics.de\/index.php\/TreeView_Kategorien_per_Drag_and_Drop_verwalten.html\",\"name\":\"TreeView: Kategorien per Drag and Drop verwalten\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/access-basics.de\/#personlogo\",\"inLanguage\":\"de\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"caption\":\"Andr\\u00e9 Minhorst\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","_links":{"self":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000482","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/comments?post=55000482"}],"version-history":[{"count":0,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000482\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/media?parent=55000482"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/categories?post=55000482"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/tags?post=55000482"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}