WPF Devexpress ComboBoxEdit Items
-
22-07-2019 - |
Domanda
Uso il componente devexpress comboBoxEdit nella mia app WPF. Assegno i valori per questo in questo modo:
private void Users1_Load()
{
DataTable dtCat = SqlHelper.GetTable("base_UserCategory_Select", new string[] { });
DataRow dr = dtCat.NewRow();
dr["UserCategoryID"] = 0;
dr["CategoryName"] = "< All >";
dr["IsSystem"] = "False";
dtCat.Rows.InsertAt(dr, 0);
comboBoxEdit1.ItemsSource = dtCat.DefaultView;
comboBoxEdit1.SelectedIndex = 1;
}
Il mio xaml:
<dxe:ComboBoxEdit Height="20" Margin="14,64,0,0" Name="comboBoxEdit1" DisplayMember = "CategoryName" ValueMember = "UserCategoryID" VerticalAlignment="Top" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" HorizontalAlignment="Left" Width="254" />
Ma il problema è che in questa casella combinata vedo i miei ID (Value Members), solo quando lo espando, vedo i valori DisplayMember. Qual è il problema, come fare per vedere sempre i valori di testo, non il mio ID ...?
Soluzione
Aggiungi
IsTextEditable="False"
al tuo xaml per ComboBoxEdit. Questo è un problema noto con il controllo menzionato qui . Uso i controlli DX e personalmente penso che i loro controlli Silverlight e WPF siano molto indietro rispetto al resto del mercato (i loro controlli Silverlight sono ancora beta, probabilmente quando ComboBoxEdit contiene un bug come questo, i controlli WPF dovrebbero essere considerati anche beta ). Potresti voler attenersi ai controlli MS fino a quando DX non risolverà la loro merda.
Altri suggerimenti
Se hai bisogno di un comportamento più complesso, puoi utilizzare il componente DevExpress LookUpEdit http: // documentazione. devexpress.com/#WindowsForms/clsDevExpressXtraEditorsLookUpEdittopic