大家好,我在获取投票系统的票数时遇到问题。每当我单击一个单选按钮时,我都必须获取该候选人的 ID 并将其传递给另一个表单以进行计票。我在制作事件处理程序时也遇到了麻烦。我所有的控件都是动态的。
到目前为止我有这个代码:
public partial class Form1 : Form {
public Form1()
{
InitializeComponent();
Load += Form1_Load;
}
FlowLayoutPanel panel = new FlowLayoutPanel();
private void InitPanel()
{
panel.Size = new Size(600, 150);
panel.Location = new Point(50, 50);
panel.FlowDirection = FlowDirection.LeftToRight;
panel.AutoScroll = true;
panel.WrapContents = false;
Controls.Add(panel);
}
private void Form1_Load(object sender, EventArgs e)
{
InitPanel();
panel.SuspendLayout();
string cmdText = "SELECT (FirstName + ' ' + MiddleName + ' ' + LastName) as FullName, " +
"imgPath as ImagePath FROM TableVote WHERE Position='President'";
using(SqlCommand com = new SqlCommand(cmdText,sc))
{
if(sc.State != ConnectionState.Open) sc.Open();
SqlDataReader reader = com.ExecuteReader();
while(reader.Read()){
AddRadioButton(reader.GetString(0), reader.GetString(1));
}
reader.Close();
sc.Close();
panel.ResumeLayout(true);
}
}
private void AddRadioButton(string fullName, string imagePath)
{
RadioButton radio = new RadioButton {Text = fullName, Parent = panel};
radio.AutoSize = true;
radio.Image = new Bitmap(Image.FromFile(imagePath),75,75);
radio.TextImageRelation = TextImageRelation.ImageAboveText;
radio.CheckAlign = ContentAlignment.BottomCenter;
}
}
谢谢 :)