 <p>You are looking for the two properties:</p> <ul> <li><a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.listcontrol.valuemember.aspx" rel="nofollow"><code>ValueMember</code></a>.</li> <li><a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.listcontrol.displaymember.aspx" rel="nofollow"><code>DisplayMember</code></a>.</li> </ul> <p>In your case, you have to set the combobox's <code>ValueMember</code> property to <code>value1</code> and the <code>DisplayMember</code> property to <code>option1</code>.</p> <p><strong>Update:</strong> The following is an exmple of how you can populate the items of a combobox from list of some entity <code>Foo</code>:</p> <pre><code>public class Foo(){ public string Id { get; set; } public string Name { get; set; } } var ds = new List&lt;Foo&gt;(){ new Foo { Id = "1", Name = "name1" }, new Foo { Id = "2", Name = "name2" }, new Foo { Id = "3", Name = "name3" }, new Foo { Id = "4", Name = "name4" }, }; comboboxName.DataSource = ds; comboboxName.ValueMember = "Id"; comboboxName.DisplayMember = "Name"; </code></pre> <p><strong>Update2:</strong> That's because you are adding the same object each time. In the following block of your code:</p> <pre><code>Foo categoryInsert = new Foo(); foreach (string s in categories) { categoryInsert.path = s; categoryInsert.name = s; combo3data.Add(categoryInsert); } </code></pre> <p>Each time The <code>foreach</code> iterate over the <code>categories</code>, all what it does, is changing the same object <code>categoryInsert</code>'s values <code>path</code> and <code>name</code> not creating a new one. Thus, you end up with the same object added in each iteration to the <code>combo3data</code>. What you need is create a new <code>Foo</code> object inside the <code>foreach</code> itself each time, i.e: move the <code>Foo categoryInsert = new Foo();</code> inside the <code>foreach</code> loop. Something like:</p> <pre><code>foreach (string s in categories) { Foo categoryInsert = new Foo(); categoryInsert.path = s; categoryInsert.name = s; combo3data.Add(categoryInsert); } </code></pre>