Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

c# add object to listbox and show string of object in it

Tags:

I'm using a ListBox and adding objects to it.

The object contains 2 variables, let's say username and userid.

How can I add the objects in the list (like listbox.Items.Add(object);) and show the username of that object?

Thnx!

like image 200
Stefan Avatar asked Dec 20 '10 11:12

Stefan


People also ask

What C is used for?

C programming language is a machine-independent programming language that is mainly used to create many types of applications and operating systems such as Windows, and other complicated programs such as the Oracle database, Git, Python interpreter, and games and is considered a programming foundation in the process of ...

What is the full name of C?

In the real sense it has no meaning or full form. It was developed by Dennis Ritchie and Ken Thompson at AT&T bell Lab. First, they used to call it as B language then later they made some improvement into it and renamed it as C and its superscript as C++ which was invented by Dr. Stroustroupe.

Is C language easy?

C is a general-purpose language that most programmers learn before moving on to more complex languages. From Unix and Windows to Tic Tac Toe and Photoshop, several of the most commonly used applications today have been built on C. It is easy to learn because: A simple syntax with only 32 keywords.

How old is the letter C?

The letter c was applied by French orthographists in the 12th century to represent the sound ts in English, and this sound developed into the simpler sibilant s.


3 Answers

You can use the DisplayMember and ValueMember properties to display the UserName property of your object and use its UserId property as the list item value:

class YourItem
{
    public string UserName { get; set; }
    public string UserId { get; set; }
}

yourListBox.DisplayMember = "UserName";
yourListBox.ValueMember = "UserId";

yourListBox.Items.Add(new YourItem {
    UserName = "FooName",
    UserId = "FooId"
});
like image 184
Frédéric Hamidi Avatar answered Sep 19 '22 02:09

Frédéric Hamidi


You can use the DisplayMember property of your listBox.

listbox.DisplayMember = "username";

There is also an equivalent property to define the actual value, that you could use to retrieve the userid. For example if you define your list like this:

listbox.DisplayMember = "username";
listbox.ValueMember = "userid";
var item1 = new MyType { username = "user1", userid = "id1" }; // Create an item for the list

listbox.Items.Add(item1); // Add the item
listbox.SelectedIndex = 0; // Selects the first item

Then you can reference the objects in the list by 3 different ways (item, value or text) like this:

MyObject newItem = (MyObject) listbox.SelectedItem; // Gets the selected MyType
// OR
string username = listbox.Text; // Gets the selected user name using the DisplayMember property of the listbox
// OR
string userid = listbox.SelectedValue; // Gets the selected user's userid using the ValueMember property of the listbox

You can also set the selected item the same 3 different ways:

listbox.SelectedItem = item1;
// OR
listbox.Text = item1.username;
// OR
listbox.SelectedValue = item1.userid;
like image 21
Evren Kuzucuoglu Avatar answered Sep 21 '22 02:09

Evren Kuzucuoglu


You can override "ToString" method.

class User
{
    public string username { set; get; }
    public string userid { set; get; }

    public override string ToString()
    {
        return username;
    }
}
like image 2
Carlos Alma Avatar answered Sep 21 '22 02:09

Carlos Alma