3

devexpressとvisualstudio2010を使用しています。LookUpEditコントロールがあり、値を選択しますが、指定された形式で表示します。buttonEditで使用した例があります。

    CurrentEvent.fkVersion = selectedVersion;
    m_cVersionButtonEdit.EditValue= CurrentEvent.fkVersion.FormattedProduct;
    m_cVersionButtonEdit.Refresh(); 

「selectedVersion」は、ボタンを押した後にダイアログで選択したオブジェクトです。

今私は同じことをしなければなりませんが、lookupEditを使用してdropDownlistからバージョンを選択します。では、問題は、選択された値を取得する方法ですか?

4

3 に答える 3

5

何を求めているのかわかりませんが、選択した値を取得する最も簡単な方法は次のとおりです。

public partial class Form1 : Form
{
    public class Example
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }
    }

    public List<Example> elist = new List<Example>();

    public Form1()
    {
        InitializeComponent();
        for (int i = 0; i < 10; i++)
        {
            elist.Add(new Example() { Id = i, Name = "Name" + i, Description = "Description " + i });
        }
        lookUpEdit1.Properties.DataSource = elist;
        lookUpEdit1.Properties.DisplayMember = "Name";
    }

    private void lookUpEdit1_EditValueChanged(object sender, EventArgs e)
    {
        var item = lookUpEdit1.GetSelectedDataRow() as Example;
    }
}
于 2012-10-03T12:07:10.587 に答える
2

受け入れられた答えへの小さな追加。提案されたソリューションは、選択された行を返しません。ValueMemberにバインドされたフィールドの値がEditValueと一致する最初の行を返します(ただし、ほとんどの場合、これは選択された行です)。

これは、f.exに複数列のLookUpEditがあり、2つ以上の列の複合によって行が一意になる場合に問題になります。私はこれが少し普通ではないことを知っていますが...

于 2012-12-12T09:08:23.193 に答える
-2

MessageBox.Show(cmblook.GetColumnValue( "item_id")。ToString()); 私がそれを使用してみてください

于 2020-09-26T16:20:11.200 に答える