C#一组单选按钮中的数组字符串

时间:2016-11-09 18:38:14

标签: c# radio-button file.readalllines

我的代码是C#windows窗体
我有一个数据文件:

大卫一和二/三 亚历克斯一二四五/六 Amanda Two Seven / Ten
Micheal Seven / Nine

并尝试将它们放在像

这样的数组中
string[] Names = File.ReadAllLines("C:\Students\Name.txt", Encoding.Default);


并将它们放在无线电按钮组中

RadioButton[] n = new RadioButton[Names.Length];

for (int i = 0; i < Names.Length; i++)
 {
   n[i] = new RadioButton();
   n[i].Text = Names[i];
   n[i].Location = new Point(10, 10 + i * 20);
   groupBox1.Controls.Add(n[i]);
 }

但它显示为我的附件图像 我试过没有Encoding.Default和Encoding.UTF8,但同样的问题。
我做错了什么?请看我的形象并帮助我。先感谢您!

enter image description here

1 个答案:

答案 0 :(得分:0)

我猜测你的文件末尾包含空行。您可以在创建单选按钮之前尝试删除它们:

for (int i = 0; i < Names.Length; i++)
 {
   var name = Names[i];
   if(name.Trim() == string.Empty) continue;

   n[i] = new RadioButton();
   n[i].Text = Names[i];
   n[i].Location = new Point(10, 10 + i * 20);
   groupBox1.Controls.Add(n[i]);
 }

如果您的文字被剪裁,您可以尝试增加控件的宽度:

n[i].Width = 300; // Put a value which will show the entire text