-1

我的代码是 C# windows form
我有一个包含数据的文件:

大卫一二/三亚
历克斯一二四五/六
阿曼达二七/十
迈克尔七/九

并试图让它们像数组一样

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 的情况下尝试的附加图像,但同样的问题。
我做错了什么?请查看我的图像并帮助我。先感谢您!

在此处输入图像描述

4

1 回答 1

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
于 2016-11-09T18:41:14.873 回答