Скрыть суррогатный ключ в LookUpEdit - PullRequest
2 голосов
/ 03 февраля 2012

Я использую LookUpEdit .Я связал два столбца, первичный ключ (GUID) и удобочитаемую строку.Я только хочу, чтобы люди видели читаемую человеком строку, но я хочу сохранить связь между строковым значением и его значением первичного ключа.

Я не могу скрыть первичный ключ, отображаемый в раскрывающемся списке.Я пробовал форум DevExpress, и его предложенное решение не работает для меня.Поэтому я попытался подключиться к событию ListChanged.Это тоже не работает.

private void DataBind()
{
    messageTypeCbB.ListChanged += new ListChangedEventHandler(messageTypeCbB_ListChanged);
    messageTypeCbB.Properties.DataSource = viewModel.SomeNoteTypes.ToArray();
    //another attempt at hiding the columns.  This fails too.  
    //messageTypeCbB.Properties.ForceInitialize();
    //messageTypeCbB.Properties.PopulateColumns();
    //messageTypeCbB.Properties.Columns[0].Visible = false;
    messageTypeCbB.Properties.DisplayMember = "NodeType";
    messageTypeCbB.Properties.ValueMember = "SomeNoteType_ID";

    fromTxt.Text = viewModel.From;
    dateTimeDd.DateTime = viewModel.Date;
}

void messageTypeCbB_ListChanged(object sender, ListChangedEventArgs e)
{            
    //For whatever reason this won't hide the column
    (sender as DevExpress.XtraEditors.LookUpEdit).Properties.Columns[0].Visible = false;
}

Как я могу скрыть суррогатный ключ?(Скрыть ValueMember, отображать только DisplayMember)

DevExpress v11.1.6

Ответы [ 2 ]

0 голосов
/ 03 февраля 2012

Я звонил DataBind() из моего конструктора форм.Я переместил вызов в событие Form Load, и это решило проблему.

0 голосов
/ 03 февраля 2012

Вы пробовали другой метод, предложенный в этом списке форума? т.е. не устанавливая для Visible значение false, а добавляя явно столбцы, которые вы хотите отобразить, в коллекцию Columns Попробуйте Columns.Clear(), затем добавьте свои столбцы. Или попробуйте PopulateColumns() тогда Columns.RemoveAt(0);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...