开发者

Select random record from combobox

How to select ra开发者_如何学Pythonndom item from a combo box, without selecting what is there already in the combobox.


I guess you want something like this:

Random random = new Random();
int newIndex = -1;

do {
    newIndex = random.Next(comboBox.Items.Count);
} while (newIndex == comobBox.SelectedIndex && comboBox.Items.Count > 1);

comobBox.SelectedIndex = random.Next(comboBox.Items.Count);


Basically Combo box has items in string so if you can describe me some clear then we may help more anyway here is sample code n you can do it

ComboBox b = new ComboBox();
Random rt = new Random();
string myText = "";
myText = b.Items[rt.Next(0, b.Items.Count - 1)].ToString();


You should use the Random class to get a random number between 0 and the max amount of items in the combobox. You should get this number repeatedly until you get one that doesn't match what is already selected within the combobox, like so:

Random random = new Random();
int newSelectedIndex = comboBox.SelectedIndex;
while (newSelectedIndex == comboBox.SelectedIndex) {
    newSelectedIndex = random.Next(0, comboBox.Items.Count);
}
comboBox.SelectedIndex = newSelectedIndex;
// Item
// comboBox.Items[newSelectedIndex];

This may not work C/P'd, as I wrote it from the top of my head and don't have an IDE to test right now, but I hope you get the idea.

IMPORTANT: If you only have 1 item which is also selected, this may get into an endless loop...

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜