C#初心者です。
データベースから特定の列のみ抜き取ったものをリストに格納し、コンボボックスに表示させたいのですがカラム(変数)を指定する方法がわかりません。
C#
1public class SampleClass{ 2 public int ID { get; set; } 3 public string Name { get; set; } 4}
上記のクラス型リストにデータを格納し、
XAML
1 <ComboBox x:Name="SampleCBox" ItemsSource="{Binding ItemsSourceCBox, Mode=OneWay}" 2SelectedValue="{Binding SelectedValueCBox, Mode=TwoWay}" 3SelectedValuePath="SelectCBox" DisplayMemberPath="PathCBox" 4IsEnabled="{Binding Path=IsEnabledCBox}" VerticalAlignment="Top"> 5 <i:Interaction.Behaviors> 6 <behavior:ComboBoxSelectionChangedBehavior 7 Command="{Binding SelectChangedCommandCBox}"/> 8 </i:Interaction.Behaviors> 9 </ComboBox> 10
上記のコンボボックスに「Name」部分を表示したいのですが、どうしても「ID」のみ表示されます。
DBからListに格納する部分は問題なくできていたので、おそらくBind部分が不足しているのかなとは思われます。
ご教示ください。
以下、四苦八苦している格納部分です。
C#
1// DB接続、SQL実行 2public List<SampleClass> GetList(){ 3 using(var connection = new SqlConnection(getConnectionString())){ 4 connection.Open(); 5 var command = new SqlCommand(); 6 string query="SELECT文"; 7 List<SampleClass> mappingobj = connection.Query<SampleClass>(query); 8 return mappingobj; 9 } 10} 11 12// リスト取得 13public List<Sampleclass> GetListService(){ 14 List<SampleClass> SampleClass = new List<SampleClass>(); 15 SampleClass = GetList(); 16 return SampleClass; 17} 18 19// Load時、コンボボックスに格納 20public void ViewModel(){ 21 List<SampleClass> SampleClass = new List<SampleClass>(); 22 sampleClass = GetListService(); 23 ItemsSourceCBox = new ObservableCollection<SampleClass>(sampleClass); 24 IsEnabledCBox = true; 25} 26 27//ItemsSourceCBox 変更プロパティ 28private ObservableCollection<SampleClass> _ItemsSourceCBox; 29private ObservableCollection<SampleClass> ItemsSourceCBox{ 30 //getter setter(省略) 31}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/09 00:14