2

大家好,

我想在给出相应的编辑值时获取查找编辑显示文本。

例子:如果我给

LookupEdit1.Editvalue="3";

那么它应该显示显示文本Editvalue="3"

请帮忙

//代码

 cmbChemical.Properties.DataSource = _lab.selectChemicals();
        cmbChemical.Properties.DisplayMember = "labitem_Name";
        cmbChemical.Properties.ValueMember = "labItem_ID";
        cmbChemical.Properties.BestFitMode = BestFitMode.BestFit;
        cmbChemical.Properties.SearchMode = SearchMode.AutoComplete;

        cmbChemical.Properties.Columns.Add(new LookUpColumnInfo("labitem_Name", 100,  "Chemicals"));
    cmbChemical.Properties.AutoSearchColumnIndex = 1;
4

3 回答 3

3

你不能,至少不能以你尝试的方式。LookUpEdit顾名思义,在 a 中查找其值,DataSource例如。对象的集合。因此,要显示该值3,您需要有一个包含该值的对象列表并将其设置DataSource为控件的 a。

List<string> values = new List<string>();
values.Add("3");
lookUpEdit.Properties.DataSource = values;
lookUpEdit.EditValue = "3";

也许如果您指定您要做什么,我们可以帮助您实现这一目标。

于 2010-09-18T09:29:29.667 回答
1

这段代码对我有用。

private void lookUpEdit1_KeyUp(object sender, KeyEventArgs e)
{
    if (e.Key == Key.Enter)
    {
        MessageBox.Show((e.OriginalSource as SLTextBox).Text);
    }
}
于 2012-04-18T10:24:55.667 回答
1

我认为您不必指定显示成员或值成员即可获得所需的行为。下面的代码给了我一个表格,lookupedit 正确显示“4”,我也可以从列表中选择其他值。

using System.Collections.Generic;
using System.Windows.Forms;
using DevExpress.XtraEditors;

public class Form1 : Form
{
    public Form1()
    {

        var lookUpEdit1 = new LookUpEdit();
        Controls.Add(lookUpEdit1);

        var source = new List<string>();
        for (var i = 0; i < 10;i++ )
            source.Add(i.ToString());
        lookUpEdit1.Properties.DataSource = source;
        lookUpEdit1.EditValue = "4";
    }

}

也许你会得到错误的结果,因为你设置了控件的显示成员和值成员。

于 2010-09-18T10:23:19.300 回答