来自 oracle 数据库的 wpf c# 中的 SelectedValuePath
SelectedValuePath in wpf c# from oracle DataBase
我对使用 selectedvaluepath 有点困惑。
indNacionalidad 仍然给我带来一个空值,我只想要组合框中所选项目的 ID。
加载:
private void combonacionalidad_Loaded(object sender, RoutedEventArgs e)
{
using (OracleConnection ora = new OracleConnection(con))
{
ora.Open();
OracleCommand comm = new OracleCommand("select * from NACIONALIDAD order by idnacionalidad", ora);
comm.CommandType = System.Data.CommandType.Text;
comm.ExecuteNonQuery();
OracleDataReader dr = comm.ExecuteReader();
OracleDataAdapter oda = new OracleDataAdapter(comm);
DataTable dt = new DataTable();
oda.Fill(dt);
combonacionalidad.ItemsSource = dt.AsDataView();
combonacionalidad.DisplayMemberPath = dt.Columns[1].ToString();
combonacionalidad.SelectedValuePath = "idnacionalidad";
ora.Close();
}
}
选择已更改:
private void combonacionalidad_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
String indNacionalidad = ((ComboBoxItem)combonacionalidad.SelectedValue).ToString();
}
如果可能的话,你如何获得一个整数?
XAML:
<ComboBox x:Name="combonacionalidad" HorizontalAlignment="Left" Margin="520,76,0,0" VerticalAlignment="Top" Width="110" Loaded="combonacionalidad_Loaded" SelectionChanged="combonacionalidad_SelectionChanged"/>
很简单。只需按如下方式更改 SelectionChanged 事件。
private void combonacionalidad_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
int indNacionalidad = combonacionalidad.SelectedIndex;
}
我对使用 selectedvaluepath 有点困惑。 indNacionalidad 仍然给我带来一个空值,我只想要组合框中所选项目的 ID。 加载:
private void combonacionalidad_Loaded(object sender, RoutedEventArgs e)
{
using (OracleConnection ora = new OracleConnection(con))
{
ora.Open();
OracleCommand comm = new OracleCommand("select * from NACIONALIDAD order by idnacionalidad", ora);
comm.CommandType = System.Data.CommandType.Text;
comm.ExecuteNonQuery();
OracleDataReader dr = comm.ExecuteReader();
OracleDataAdapter oda = new OracleDataAdapter(comm);
DataTable dt = new DataTable();
oda.Fill(dt);
combonacionalidad.ItemsSource = dt.AsDataView();
combonacionalidad.DisplayMemberPath = dt.Columns[1].ToString();
combonacionalidad.SelectedValuePath = "idnacionalidad";
ora.Close();
}
}
选择已更改:
private void combonacionalidad_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
String indNacionalidad = ((ComboBoxItem)combonacionalidad.SelectedValue).ToString();
}
如果可能的话,你如何获得一个整数?
XAML:
<ComboBox x:Name="combonacionalidad" HorizontalAlignment="Left" Margin="520,76,0,0" VerticalAlignment="Top" Width="110" Loaded="combonacionalidad_Loaded" SelectionChanged="combonacionalidad_SelectionChanged"/>
很简单。只需按如下方式更改 SelectionChanged 事件。
private void combonacionalidad_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
int indNacionalidad = combonacionalidad.SelectedIndex;
}