Export (0) Print
Expand All

ListControl.DisplayMember Property

Gets or sets the property to display for this ListControl.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

public:
property String^ DisplayMember {
	String^ get ();
	void set (String^ value);
}
/** @property */
public String get_DisplayMember ()

/** @property */
public void set_DisplayMember (String value)

public function get DisplayMember () : String

public function set DisplayMember (value : String)

Property Value

A String specifying the name of an object property that is contained in the collection specified by the DataSource property. The default is an empty string ("").

The controls that inherit from ListControl can display diverse types of objects. If the specified property does not exist on the object or the value of DisplayMember is an empty string (""), the results of the object's ToString method are displayed instead.

If the new display member cannot be set, the previous display member setting is maintained.

The following code example is a complete application that shows how you can use DataSource, DisplayMember, ValueMember, and SelectedValue members of the ListControl class as implemented by the ListBox class. The example loads an ArrayList and the list box. When the user selects an item in the list box, the selected value is used to return the data associated with the selected item.

#using <System.dll>
#using <System.Drawing.dll>
#using <System.Windows.Forms.dll>

using namespace System;
using namespace System::Windows::Forms;
using namespace System::Drawing;
using namespace System::Collections;
public ref class USState
{
private:
   String^ myShortName;
   String^ myLongName;

public:
   USState( String^ strLongName, String^ strShortName )
   {
      this->myShortName = strShortName;
      this->myLongName = strLongName;
   }

   property String^ ShortName 
   {
      String^ get()
      {
         return myShortName;
      }
   }

   property String^ LongName 
   {
      String^ get()
      {
         return myLongName;
      }

   }
   virtual String^ ToString() override
   {
      return String::Concat( this->ShortName, " - ", this->LongName );
   }
};

public ref class ListBoxSample3: public Form
{
private:
   ListBox^ ListBox1;
   TextBox^ textBox1;

public:
   ListBoxSample3()
   {
      ListBox1 = gcnew ListBox;
      textBox1 = gcnew TextBox;
      this->ClientSize = System::Drawing::Size( 292, 181 );
      this->Text = "ListBox Sample3";
      ListBox1->Location = Point(24,16);
      ListBox1->Name = "ListBox1";
      ListBox1->Size = System::Drawing::Size( 232, 130 );
      textBox1->Location = Point(24,160);
      textBox1->Name = "textBox1";
      textBox1->Size = System::Drawing::Size( 240, 24 );
      array<Control^>^temp2 = {ListBox1,textBox1};
      this->Controls->AddRange( temp2 );
      
      // Populates the list box using DataSource. 
      // DisplayMember is used to display just the long name of each state.
      ArrayList^ USStates = gcnew ArrayList;
      USStates->Add( gcnew USState( "Alabama","AL" ) );
      USStates->Add( gcnew USState( "Washington","WA" ) );
      USStates->Add( gcnew USState( "West Virginia","WV" ) );
      USStates->Add( gcnew USState( "Wisconsin","WI" ) );
      USStates->Add( gcnew USState( "Wyoming","WY" ) );
      ListBox1->SelectedValueChanged += gcnew EventHandler( this, &ListBoxSample3::ListBox1_SelectedValueChanged );
      ListBox1->DataSource = USStates;
      ListBox1->DisplayMember = "LongName";
      ListBox1->ValueMember = "ShortName";
   }

   void InitializeComponent(){}

private:

   void ListBox1_SelectedValueChanged( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      if ( ListBox1->SelectedIndex != -1 )
            textBox1->Text = ListBox1->SelectedValue->ToString();
   }
};

[STAThread]
int main()
{
   Application::Run( gcnew ListBoxSample3 );
}

package MyListControlSample;

import System.*;
import System.Windows.Forms.*;
import System.Drawing.*;
import System.Collections.*;

public class USState
{
    private String myShortName;
    private String myLongName;

    public USState(String strLongName, String strShortName)
    {
        this.myShortName = strShortName;
        this.myLongName = strLongName;
    } //USState

    /** @property
     */
    public String get_ShortName()
    {
        return myShortName;
    }//get_ShortName

    /** @property 
     */
    public String get_LongName()
    {
        return myLongName;
    }//get_LongName

    public String ToString()
    {
        return this.get_ShortName() + " - " + this.get_LongName();
    } //ToString
} //USState

public class ListBoxSample3 extends Form
{
    private ListBox listBox1 = new ListBox();
    private TextBox textBox1 = new TextBox();

    /** @attribute STAThread()
     */
    public static void main(String[] args)
    {
        Application.Run(new ListBoxSample3());
    } //main

    public ListBoxSample3()
    {
        this.set_ClientSize(new Size(292, 181));
        this.set_Text("ListBox Sample3");

        listBox1.set_Location(new Point(24, 16));
        listBox1.set_Name("ListBox1");
        listBox1.set_Size(new Size(232, 130));
        textBox1.set_Location(new Point(24, 160));
        textBox1.set_Name("textBox1");
        textBox1.set_Size(new Size(240, 24));
        this.get_Controls().AddRange(new Control[] { listBox1, textBox1 });

        // Populates the list box using DataSource. 
        // DisplayMember is used to display just the long name of each state.
        ArrayList uSStates = new ArrayList();
        uSStates.Add(new USState("Alabama", "AL"));
        uSStates.Add(new USState("Washington", "WA"));
        uSStates.Add(new USState("West Virginia", "WV"));
        uSStates.Add(new USState("Wisconsin", "WI"));
        uSStates.Add(new USState("Wyoming", "WY"));

        listBox1.add_SelectedValueChanged(
            new EventHandler(listBox1_SelectedValueChanged));
        listBox1.set_DataSource(uSStates);
        listBox1.set_DisplayMember("LongName");
        listBox1.set_ValueMember("ShortName");
    } //ListBoxSample3
    
    private void InitializeComponent()
    {
    } //InitializeComponent

    private void listBox1_SelectedValueChanged(Object sender, EventArgs e)
    {
        if (listBox1.get_SelectedIndex() != -1) {
            textBox1.set_Text(listBox1.get_SelectedValue().ToString());
        }
    } //listBox1_SelectedValueChanged
} //ListBoxSample3 

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft