WPF中使用DevExpress控件lookupedite

今天我终于把lookupedit的使用方法弄出来了!我只想说DevExpress是个好东西,但细节上真的是个吭货!一会再说为什么吭吧!先上代码

在WPF界面 上先添加页面代码 (参考):

            <TextBlock Name="Txt_SjfyDataList" Visibility="Collapsed"></TextBlock>

            <dxg:LookUpEdit Name="lookUpEdit1"
                        DisplayMember="Name"
                        ValueMember="Code"
                        VerticalAlignment="Center"
                    ShowSizeGrip="True"
                    AutoPopulateColumns="False"
                    IsPopupAutoWidth="False" IsTextEditable="True"
                        Width="200" Canvas.Left="785" Canvas.Top="4"
                            ItemsSource="{Binding ElementName=Txt_SjfyDataList,Path=DataContext}">
                <dxg:LookUpEdit.PopupContentTemplate>
                    <ControlTemplate>
                        <dxg:GridControl Name="PART_GridControl">
                            <dxg:GridControl.Columns>
                                <dxg:GridColumn Header="编码" FieldName="Code" ReadOnly="True"/>
                                <dxg:GridColumn Header="名称" FieldName="Name" ReadOnly="True"/>
                                <dxg:GridColumn Header="拼音码" FieldName="PYM" ReadOnly="True"/>
                            </dxg:GridControl.Columns>
                            <dxg:GridControl.View>
                                <dxg:TableView AutoWidth="True" />
                            </dxg:GridControl.View>
                        </dxg:GridControl>
                    </ControlTemplate>
                </dxg:LookUpEdit.PopupContentTemplate>
                <dxg:LookUpEdit.StyleSettings>
                    <dxg:SearchLookUpEditStyleSettings />
                </dxg:LookUpEdit.StyleSettings>
            </dxg:LookUpEdit>

此时一定要注意LookupEdit里添加的GridControl。这个东西的Name属性必须为:PART_GridControl。要不然,你的LookupEdit没办法进行筛选!

这都是我在官网上找到的(如下图),这把我吭了几天

最后,在页面后台添加一些数据就可以展示出来了

            List<VCdglData> _list = new List<ViewModel.VCdglData>();
            _list.Add(new VCdglData() { Code = 1, Name = "内科", PYM = "NK" });
            _list.Add(new VCdglData() { Code = 2, Name = "外科", PYM = "WK" });
            _list.Add(new VCdglData() { Code = 3, Name = "五官科", PYM = "WGK" });
            _list.Add(new VCdglData() { Code = 4, Name = "脑科", PYM = "NK" });
            Txt_SjfyDataList.DataContext = _list;

在结束之际,我想吓BB几句,网上那些转发别人的“WPF中使用DEV 控件lookupedite”,“ DEV 控件lookupedite 在WPF中使用”。真的是一群吭B。不知误导了多少新人!代码弄得牛头不对马嘴的。

原文地址:https://www.cnblogs.com/icewatermei/p/14417474.html