Solved

Data bound ComboBox

Posted on 2004-04-15
6
385 Views
Last Modified: 2007-12-19
I have a combo box on a pocket pc form with the data source set to a DataTable and the ValueMember set to an ID field and the DisplayMember set to a Description field.

To get a blank entry at the top of the combo box I add a row to the beginning of the DataTable with an ID of 0 and a description of spaces.

Sometimes i need to select a specific value when loading the combo box so it displays the correct item on entry. I do this as follows:
this.combobox.SelectedValue = ID (where ID > 0)

If there are 2 or more rows in the DataTable (before i add a blank one) it works fine.
However, if there is only 1 row in the DataTable an unspecified exception is thrown.

Any idea why, or how this can be avoided???
0
Comment
Question by:MartinLarge
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
6 Comments
 
LVL 6

Expert Comment

by:DaniPro
ID: 10833683
You must verify that the number of the itemes is less then your id

if (combobox.Items.Count > ID)
      combobox.SelectedValue = ID;
0
 

Author Comment

by:MartinLarge
ID: 10834030
I have an Id with a value of 8 when there are only 3 rows in the table and it still works. It doesn't work if there is only 1 row in the original table.

What you suggested would be OK if using SelectedIndex but i'm using SelectedValue from a datasource.
0
 
LVL 6

Expert Comment

by:DaniPro
ID: 10834306
You have right (it was SelectedIndex), then you must verify that exists an item with the ValueMember with your ID:

if (combobox.Items.Contains(ID))
     combobox.SelectedValue = ID;
0
 

Author Comment

by:MartinLarge
ID: 10834693
The Id does exist within the DataTable.

If the DataTable has 2 rows the combo box works fine and selects the correct id.
If i remove the row which does not match the id it crashes.

I think there is a problem with adding the blank datarow to the DataTable.
When i don't do this it works fine.
0
 

Accepted Solution

by:
ee_ai_construct earned 0 total points
ID: 11756969
PAQed, with points refunded (125)
ee_ai_construct - CS Mod
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Visual Studio hangs on running project 6 81
How to set focus on a dynamic control 18 47
aspx ascx, c# 7 38
How does this modal work? 3 29
Introduction This article series is supposed to shed some light on the use of IDisposable and objects that inherit from it. In essence, a more apt title for this article would be: using (IDisposable) {}. I’m just not sure how many people would ge…
We all know that functional code is the leg that any good program stands on when it comes right down to it, however, if your program lacks a good user interface your product may not have the appeal needed to keep your customers happy. This issue can…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…
Are you ready to implement Active Directory best practices without reading 300+ pages? You're in luck. In this webinar hosted by Skyport Systems, you gain insight into Microsoft's latest comprehensive guide, with tips on the best and easiest way…

738 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question