DevExpress查找编辑所选文本问题

DevExpress查找编辑所选文本问题,devexpress,Devexpress,我将一些lookupedits绑定到一些列表中,用户可以在其中选择值,然后保存到数据库中。我使用EditValueChanged事件来处理这些值。到目前为止一切都很好 现在我需要从数据库中获取值并将它们分配给lookupedits。我不会对整个对象使用BindingSource,因为查找编辑绑定到独立列表。 正如我从文档中推测和阅读的那样,SelectedText是我所需要的,但是当我分配我想要的字符串时,它不起作用,并且设置了一个空字符串。DateEdit控件的行为相同,我分配了一个DateT

我将一些lookupedits绑定到一些列表中,用户可以在其中选择值,然后保存到数据库中。我使用EditValueChanged事件来处理这些值。到目前为止一切都很好

现在我需要从数据库中获取值并将它们分配给lookupedits。我不会对整个对象使用BindingSource,因为查找编辑绑定到独立列表。 正如我从文档中推测和阅读的那样,SelectedText是我所需要的,但是当我分配我想要的字符串时,它不起作用,并且设置了一个空字符串。DateEdit控件的行为相同,我分配了一个DateTime值,似乎有这个值,但没有显示它。我可以设置EditValue属性,但我没有在LookUpEdit中再次显示任何内容

如何强制LookUpEdit向我显示所需的值,基本上是使用我设置的值转到行并在编辑器中显示文本,或者设置SelectedText并将其与列表匹配并显示它

我想这应该更容易…任何帮助感谢

例如:

myLookUpEdit.SelectedText = "George" // The LookUpEdit is Binded to a List<Names> and has the name George.
myLookUpEdit.SelectedText=“George”//LookUpEdit绑定到一个列表,名称为George。

谢谢

每当我设置LookupEdit的值时,我都使用EditValue

您需要确保将LookupEdit的ValueMember属性设置为希望在EditValue中显示的任何内容。DisplayMember将显示关闭编辑时显示的内容。您可以将字符串传递给要在对象中传递给这些属性的属性的名称

据我所知,设置SelectedText值与在控件中键入具有相同的效果

public partial class Form1 : Form
{
    List<Name> MyNames = new List<Name>();

    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        MyNames.Add(new Name("John", "Smith"));
        MyNames.Add(new Name("John", "Doe"));
        MyNames.Add(new Name("Jane", "Doe"));
        MyNames.Add(new Name("Jane", "Smith"));

        lookUpEdit1.Properties.DataSource = MyNames;
        lookUpEdit1.Properties.DisplayMember = "FirstName";
        lookUpEdit1.Properties.ValueMember = "FirstName";

    }

    private void lookUpEdit1_EditValueChanged(object sender, EventArgs e)
    {

        string mystring = lookUpEdit1.EditValue.ToString();

        lookUpEdit1.EditValue = mystring;
    }
}

public class Name
{
    public string FirstName { get; set; }
    public string LastName { get; set; }

    public Name(string firstName, string lastName)
    {
        this.FirstName = firstName;
        this.LastName = lastName;
    }
}
公共部分类表单1:表单
{
List MyNames=新列表();
公共表格1()
{
初始化组件();
}
私有void Form1\u加载(对象发送方、事件参数e)
{
添加(新名字(“约翰”、“史密斯”);
添加(新名称(“约翰”、“多伊”);
添加(新名称(“Jane”、“Doe”);
添加(新名字(“简”、“史密斯”);
lookUpEdit1.Properties.DataSource=MyNames;
lookUpEdit1.Properties.DisplayMember=“FirstName”;
lookUpEdit1.Properties.ValueMember=“FirstName”;
}
私有void lookUpEdit1\u EditValueChanged(对象发送方,事件参数e)
{
字符串mystring=lookUpEdit1.EditValue.ToString();
lookUpEdit1.EditValue=mystring;
}
}
公共类名
{
公共字符串名{get;set;}
公共字符串LastName{get;set;}
公共名称(字符串名、字符串名)
{
this.FirstName=FirstName;
this.LastName=LastName;
}
}

谢谢你的时间,我已经修正了:)我这里遗漏了一些东西…你到底为什么要将
lookUpEdit1
EditValue
设置为另一个变量,然后将
lookUpEdit1
EditValue
设置为该变量?它已经等于这个了,对吗?你不是在徒劳地创建另一个变量吗?