c# - 在 c# WPF 中从 oracle 数据库加载组合框
问题描述
我正在尝试用 Oracle 数据库填充组合框,但我是 WPF 的新手。我错过了什么?C# :
private void combonacionalidad_Loaded(object sender, RoutedEventArgs e)
{
ora.Open();
OracleCommand comm = new OracleCommand("select idnacionalidad, nacionalidad from nacionalidad ", ora);
comm.CommandType = System.Data.CommandType.Text;
OracleDataAdapter oda = new OracleDataAdapter(comm);
DataSet ds = new DataSet();
oda.Fill(ds);
combonacionalidad.DisplayMemberPath = "nacionalidad";
combonacionalidad.SelectedValuePath = "idnacionalidad";
}
XAML:
<ComboBox x:Name="combonacionalidad" HorizontalAlignment="Left" Margin="520,76,0,0" VerticalAlignment="Top" Width="110" Loaded="combonacionalidad_Loaded"/>
解决方案
您必须先将属性绑定combonacionalidad.ItemSource
到要使用的数据才能使用DisplayMemberPath
和SelectedValuePath
属性。使用这个问题作为信息来源,我稍微修改了你的代码,看看它是否像这样工作:
private void combonacionalidad_Loaded(object sender, RoutedEventArgs e)
{
ora.Open();
OracleCommand comm = new OracleCommand("select idnacionalidad, nacionalidad from nacionalidad ", ora);
comm.CommandType = System.Data.CommandType.Text;
OracleDataAdapter oda = new OracleDataAdapter(comm);
DataTable dt = new DataTable();
oda.Fill(dt);
combonacionalidad.ItemsSource = dt.AsDataView();
combonacionalidad.DisplayMemberPath = "nacionalidad";
combonacionalidad.SelectedValuePath = "idnacionalidad";
}
推荐阅读
- java - 在 Java 中的 JSON 文件中查找用户输入
- javascript - 如何清除处理文件下载且不导航的 HTML 表单
- java - Unknown mappedBy in:... 引用的属性未知
- laravel - Laravel 8 - 有条件地记住缓存中的值
- javascript - 为什么我的搜索功能不适用于 SpaceX api?
- python - 从以换行符分隔的不同列中的元组列表写入文本文件
- r - 如何计算多个系列的 ACF 并一次绘制它们?
- django - 如何从 Django 中的特定表单中获取字段类?
- bash - 在 bash 中获得“权限被拒绝”时回显字符串
- css - 表格单元格宽度无论如何都没有响应......已经这样做了 6 年