WPF中使用DevExpress的LookUpEdit控件,EditValue绑定数据却不显示所选择的内容!
这个问题,是我一直没搞懂的。今天终于知道怎么回事了。
明细LIST中的类型与EditValue绑定类型必须要一样。
上代码先:
LookUpEdit控件的XMAL代码:
<LookUp:LookUpEdit x:Name="Lue_Ynlxr" Width="100" Height="25" AutoPopulateColumns="False" IsPopupAutoWidth="False" DisplayMember="Czymc" ValueMember="Czyid" PopupMaxWidth="500" AutoComplete="True" FilterCondition="StartsWith" FindButtonPlacement="Popup" FindMode="Always" IsTextEditable="False" ItemsSource="{Binding DataContext, ElementName=YnlxrDataList}" EditValue="{Binding Ynlxr, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"> <LookUp:LookUpEdit.StyleSettings> <LookUp:SearchLookUpEditStyleSettings /> </LookUp:LookUpEdit.StyleSettings> <LookUp:LookUpEdit.PopupContentTemplate> <ControlTemplate> <dxg:GridControl x:Name="PART_GridControl" Width="400" > <dxg:GridControl.View> <dxg:TableView ShowTotalSummary="False" ShowGroupPanel="False"/> </dxg:GridControl.View> <dxg:GridColumn Header="编码" FieldName="Czyid" ReadOnly="True" Width="80"/> <dxg:GridColumn Header="名称" FieldName="Czymc" ReadOnly="True" Width="160"/> </dxg:GridControl> </ControlTemplate> </LookUp:LookUpEdit.PopupContentTemplate> </LookUp:LookUpEdit>
注意了,“Czyid”是ValueMember,也是数据LIST中的,
“Ynlxr”是绑定的。
那Czyid的类型必须与Ynlxr类型必须一样。不能一个为int,一个为string