Piszę program do tagowania plików na dysku. Z racji że jestem początkujący w WPF mam kilka pytań.

Taką mam wizję programu: http://img684.imageshack.us/i/11045396.png/
Dodawanie plików (z ich tagami) do bazy danych (SQLite) już napisałem. Mam problem z wyszukiwaniem.

  • "Dodatkowe tagi" dodatkowe tagi po których wyszukiwane są pliki. Coś podobnego do takiego zapytania: SELECT * FROM tags t WHERE t.word='This is my link' OR t.word='This is my second link'
  • lewy listbox pokazuje tagi które są przypisane do plików, które mają tagi wymienione w "Dodatkowe tagi"
  • prawy listbox pokazuje pliki z tagami "Dodatkowe tagi"

No i moje pytania:

  1. Jak dynamicznie dodawać tagi do groupbox "Dodatkowe tagi" po zaznaczeniu tagu w lewym listbox i/lub wypełnieniu texbox "Główne słowo kluczowe" ? Obecnie XAML mam taki:

          <GroupBox Header="Dodatkowe tagi" Margin="5,31,5,0" Name="groupBox1" Height="58" VerticalAlignment="Top"><br/>
            <ScrollViewer HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto"><br/>
              <WrapPanel Orientation="Horizontal"><br/>
                  <TextBlock Cursor="Hand" Foreground="MidnightBlue">This is my link</TextBlock><br/>
                  <TextBlock Text=" >> " /><br/>
                <TextBlock Cursor="Hand" Foreground="MidnightBlue">This is my second link</TextBlock><br/>
                  <TextBlock Text=" >> " /><br/>
                <TextBlock Cursor="Hand" Foreground="MidnightBlue">This is my third link</TextBlock><br/>
                  <TextBlock Text=" >> " /><br/>
                <TextBlock Cursor="Hand" Foreground="MidnightBlue">This is my forth link</TextBlock><br/>
                 <TextBlock Text=" >> " /><br/>
                <TextBlock Cursor="Hand" Foreground="MidnightBlue">This is my fifth link</TextBlock><br/>
                 <TextBlock Text=" >> " /><br/>
                <TextBlock Cursor="Hand" Foreground="MidnightBlue">This is my sixth link</TextBlock><br/>
              </WrapPanel><br/>
            </ScrollViewer><br/>
          </GroupBox>
  2. Tagi w "Dodatkowe tagi" muszą być klikalne. Po kliknięciu na trzeci tag muszę złapać to zdarzenie i wyczyścić wszystkie następniki tego taga. (czwarty, piąty, itd). Coś na zasadzie PHP: domain.ltd/?tags=first,second,third (gdzie mogę użyć explode(',' $_GET['tags']) i wiedzieć z jakich tagów stworzyć nowe zapytanie SQL).