チェックボックスアイテムを含むリストボックスアイテムが4つあります。私は同じデータセットからそれらをバインドしようとしていますが、私はそれを正しくしていないようです。私がこのようにバインドすると、リストボックスの4番目のアイテムだけがアイテム名を表示し、残りのアイテムは空白のチェックボックスのみを表示します。WPF - 同じデータセットから複数のリストボックスアイテムをデータバインドする方法
また、この方法でチェックボックスをバインドするかどうかを知りたいのですが、選択されたデータベースのID値に後でアクセスするにはどうすればいいですか?(Contentのみを設定し、selectedValuePathなどを設定しませんでした。ここで
は、以下の私のコードです:
これに代えXML
<ListBox x:Name="listBox1" ItemsSource="{Binding}" HorizontalAlignment="Left" Height="52" Margin="141,264,0,0" VerticalAlignment="Top" Width="307" SelectionMode="Multiple">
<ListBox.ItemTemplate>
<DataTemplate>
<CheckBox x:Name="checkBox1" Content="{Binding NacinGrejanja}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<Label Content="Tip Objekta:" HorizontalAlignment="Left" Margin="30,323,0,0" VerticalAlignment="Top"/>
<ListBox x:Name="listBox2" ItemsSource="{Binding}" HorizontalAlignment="Left" Height="26" Margin="141,323,0,0" VerticalAlignment="Top" Width="307">
<ListBox.ItemTemplate>
<DataTemplate>
<CheckBox x:Name="checkBox1" Content="{Binding TipObjekta}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<Label Content="Opis Objekta:" HorizontalAlignment="Left" Margin="31,366,0,0" VerticalAlignment="Top"/>
<ListBox x:Name="listBox3" ItemsSource ="{Binding}" HorizontalAlignment="Left" Height="52" Margin="142,366,0,0" VerticalAlignment="Top" Width="307">
<ListBox.ItemTemplate>
<DataTemplate>
<CheckBox x:Name="checkBox3" Content="{Binding OpisObjekta}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<Label Content="Dodatno:" HorizontalAlignment="Left" Margin="31,437,0,0" VerticalAlignment="Top"/>
<ListBox x:Name="listBox4" ItemsSource ="{Binding}" HorizontalAlignment="Left" Height="52" Margin="142,437,0,0" VerticalAlignment="Top" Width="307">
<ListBox.ItemTemplate>
<DataTemplate>
<CheckBox x:Name="checkBox4" Content="{Binding Dodatno}" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
C#
private void Window_Loaded_1(object sender, RoutedEventArgs e)
{
Dataset1 ds= new Dataset1();
GrejanjeTableAdapter gta = new GrejanjeTableAdapter();
TipObjektaTableAdapter tta = new TipObjektaTableAdapter();
OpisObjektaTableAdapter ota = new OpisObjektaTableAdapter();
DodatnoTableAdapter dta = new DodatnoTableAdapter();
gta.Fill(ds.Grejanje);
tta.Fill(ds.TipObjekta);
ota.Fill(ds.OpisObjekta);
dta.Fill(ds.Dodatno);
this.DataContext = ds.Grejanje;
this.DataContext = ds.TipObjekta;
this.DataContext = ds.OpisObjekta;
this.DataContext = ds.Dodatno;
}
これは動作しましたが、ListBoxにItemsSource = "{Binding}"を入れないと、checkBoxアイテムのテキストが表示されませんでした。また、NacinGrejanjaのIDの意味を理解しているとは思いませんか? – Adicili
IDの事に関しては、私はあなたの質問に答えていた "選択されたデータベースからID値に後でアクセスする方法" –
もう一度、私はまだチェックボックスが選択されているかどうかをチェックする方法と苦労しているデータベースから値を取得します。私が開いたこの新しいトピックを見てください:http://stackoverflow.com/q/40452039/5721684。ありがとうございました – Adicili