私はWpfへの移行に苦労していましたが、lsitviewへのデータバインディングを試している間にちょうど立ち往生しています。リストビューをデータセット(データセットのデータが異なるテーブルに属しているためデータセット)にバインドします。私が試しているサンプルコードです。これは問題なく動作しますが、リストは1つの行しか表示しません。間違っている可能性があります。誰でも私をガイドできます。すべてのサンプルはdatatables.Noneを使用してデータセットにバインドしています。 .ANY入力が高く評価されます...おかげで、事前にwpf listviewをデータセットにバインドする...可能ですか?
私のXAML
<Grid>
<TextBox Text="" Height="20" Width="100" HorizontalAlignment="Left" Margin="15,13,0,0" VerticalAlignment="Top"></TextBox>
<TextBox Text="" Height="20" Width="100" HorizontalAlignment="Left" Margin="15,42,0,0" VerticalAlignment="Top"></TextBox>
<ListView Margin="15,89,63,73" Name="lst" ItemsSource="{Binding}">
<ListView.View>
<GridView>
<GridViewColumn Header="Name" DisplayMemberBinding="{Binding Path=T1/Name}"></GridViewColumn>
<GridViewColumn Header="Place" DisplayMemberBinding="{Binding Path=T2/Name}"></GridViewColumn>
</GridView>
</ListView.View>
</ListView>
<!--<Button Height="19" HorizontalAlignment="Right" Name="button2" VerticalAlignment="Top" Width="46" Margin="0,42,63,0" Click="button2_Click">Add</Button>-->
<Button Height="19" HorizontalAlignment="Right" Name="button1" VerticalAlignment="Top" Width="46" Click="button1_Click" Margin="0,43,63,0">Add</Button>
マイコード
Dt1 = new DataTable("T1");
Dt1.Columns.Add("Name");
Dt1.Rows.Add("abc1");
Dt1.Rows.Add("abc2");
Dt2 = new DataTable("T2");
Dt2.Columns.Add("Name");
Dt2.Rows.Add("xyz1");
Dt2.Rows.Add("xyz1");
Ds = new DataSet();
Ds.Tables.Add(Dt1);
Ds.Tables.Add(Dt2);
lst.DataContext = Ds;
"listView.DataContext = MyDataTable()テーブル[0];" =>なぜ? MyDataTableは、DataSetではなくDataTableを返します。 –
間違えて、それが発生しました。私はmydataset()を書くことになっています。Tables [0]。 –
でも、データセットをリストビューやリストボックスにバインドする方法はありません。リストボックス内の複数のデータテーブルのデータを表示するだけです.Uはオブジェクトにバインドできます。データセットとデータテーブルはオブジェクトです。どのようなビジネスオブジェクトとデータセットへのバインディングの違いは何ですか? –