0

任何人都可以帮助我使用 value 属性找到 Combobox 项。组合框绑定到数据集。这是我的代码。

XAML 代码

ComboBox Grid.Column="0" Grid.Row="3" Height="23" HorizontalAlignment="Left"
Margin="12,23,0,0" Name="cbxDesignation" VerticalAlignment="Top" Width="120" 
ItemsSource="{Binding}" SelectedValuePath="Desig_Code" SelectedItem="Desig_Name"

后面的 C# 代码。

//Populate Designation

<i> strSQL = "SELECT Desig_Code, Desig_Name FROM Desig_Master";

            dsCommon = CDTier.ReturnDataSet(strSQL);

            cbxDesignation.DataContext = dsCommon.Tables[0].DefaultView;

            cbxDesignation.DisplayMemberPath = dsCommon.Tables[0].Columns["Desig_Name"].ToString();
            cbxDesignation.SelectedValuePath = dsCommon.Tables[0].Columns["Desig_Code"].ToString();
            if (dsCommon.Tables[0].Rows.Count > 0)
                cbxDesignation.SelectedIndex = 0;
            dsCommon.Dispose();
</i>

根据员工选择,我想显示他的指定。在数据库中,我只有在 SelectedValuePath 中映射的指定代码 (Desig_Code)。

我怎样才能做到这一点?

我有cbxDesignation.SelectedValue如下

cbxDesignation.SelectedValue =  (dsMaster.Tables[0].Rows[0] 
["Desig_Code"].ToString() != "") ? dsMaster.Tables[0].Rows[0]
["Desig_Code"].ToString() : "0";

请帮助任何人......

谢谢你。

4

1 回答 1

0

尝试使用cbxDesignation.ItemContainerGenerator.ContainerFromItem(cbxDesignation.SelectedValue)which 应该给你你的ComboBoxItem.

或者你可以使用ItemContainerGenerator.ContainerFromIndex(cbxDesignation.SelectedIndex)作为替代

于 2013-05-02T15:20:32.687 回答