ahh ok.. en ese caso te puedes apoyar de la propiedad DropDownWidth y leer el texto mas largo para tomar ese ancho.. ejemplo:
Código:
string[] obj = new string[]{"valor 1", "otro valor", "mas texto","daj kdjakjak jdkjsakdsa"};
comboBox1.DataSource = obj;
int width = comboBox1.DropDownWidth;
Graphics g = comboBox1.CreateGraphics();
Font font = comboBox1.Font;
int vertScrollBarWidth =
(comboBox1.Items.Count>comboBox1.MaxDropDownItems)
?SystemInformation.VerticalScrollBarWidth:0;
int newWidth;
foreach (string s in comboBox1.Items) {
newWidth = (int) g.MeasureString(s, font).Width
+ vertScrollBarWidth;
if (width < newWidth ) {
width = newWidth;
}
}
comboBox1.DropDownWidth = width;
Lo voy a dejar también en las faq´s por cualquier cosa.
Espero que sea lo que buscas..