Un couple raisons le code pourrait être défectueux. Pour clouer vraiment vers le bas, mettre votre conversion court sur une nouvelle ligne, comme ceci:
short val = Convert.ToInt16(txtBoxValue.Text);
string strChar = strTest.Substring(0, val);
probablement la valeur txtBoxValue.Text n'est pas un court (il pourrait être trop grand, ou avoir des caractères alpha dans ce). Si elle est valide et que val est assigné, strTest peut ne pas avoir assez de caractères pour que la sous-chaîne fonctionne, bien que cela renvoie normalement une erreur différente. En outre, le deuxième paramètre de la sous-chaîne peut nécessiter un int (pas sûr, ne peut pas tester maintenant), vous devrez peut-être convertir en int32 au lieu de 16.
Quelle est la valeur de txtBoxValue.Text lors de vos tests ?
Il serait utile d'afficher les valeurs de srtTest et txtBoxValue.Text –
Le txtBoxValue était vide! Doh! –
La question n'est pas inutile. Basique, mais pas inutile. +1 pour contrer -1. –