Avatar
archie777
Člen
Avatar
archie777:

Zdravím :)

je možné nějak pouze za použití XAML mezi sebou propojit dva prvky v různych oknech, aniž bych musel pouzit nějakou třídu? jde mi o to, aby se data v listboxu měnila dynamicky

listbox mi po loadu okna nacte sql table

<DataTemplate x:Key="ukaz">


           <TextBlock Text="{Binding Path=Nazev}"/>

       </DataTemplate>
<ListBox x:Name="listbox1" HorizontalAlignment="Left" Height="390" VerticalAlignment="Top" Width="230" Margin="50,76,0,0" ItemTemplate="{StaticResource ukaz}" SelectionChanged="listbox1_SelectionChanged" />

vše OK, chci ale, aby se mi bez použití nějaky další kolekce dynamicky změnil listboxu už ve chvíli, kdy v JINÉM okně kliknu na vytvořit

v jednom okně bych to udělal takto:

Text="{Binding ElementName=listbox1, Path=SelectedItem.Nazev, UpdateSourceTrigger=PropertyChanged}"

jde to nějak jednoduše udělat v xaml nebo je nutný použít nějakou společnou kolekci atd?

díky za případnou pomoc :O

Editováno 16.3.2014 11:08
 
Odpovědět 16.3.2014 11:06
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na archie777
David Čápka:

Nevím o tom, že by to šlo bez použití třídy. Data si prostě normálně ulož do nějaké kolekce a tu binduj do obou formulářů.

Nahoru Odpovědět  +2 16.3.2014 11:20
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Odpovídá na archie777
Jakub Lásko[Saarix]:

Mělo by stačit u prního ListBoxu v Bindingu připsat toto:

<DataTemplate x:Key="ukaz">


            <TextBlock Text="{Binding Path=Nazev, Mode=TwoWay}"/>

        </DataTemplate>
Editováno 16.3.2014 17:31
Nahoru Odpovědět 16.3.2014 17:30
Časem je vše možné.
Avatar
archie777
Člen
Avatar
Odpovídá na Jakub Lásko[Saarix]
archie777:

to s tim modem bohužel nefunguje, ale stejně nevim proč

dokud se vse deje v jednom okne, zmeny se na listboxu projeví okamžite, přitom listbox je bindnutej na sql table / instanci tridy timhle zpusobem:

_zastupce_tridy_dat = new data_class(_datact);
class data_class : ObservableCollection<Table>
this.listbox1.ItemsSource = _zastupce_tridy_dat;
<TextBlock Text="{Binding Path=Nazev, Mode=TwoWay}"/>

ta path = nazev je nazev polozky v sql tablu

proc to v jednom okně dynamicky funguje a ve dvou uz ne? oba okna vidi ty sql tably v pohodě

Editováno 18.3.2014 21:05
 
Nahoru Odpovědět 18.3.2014 21:04
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.