nplib
asked on
Adding controls to panel
The section of code
event_list_panel.Controls. Add(d_even t_title[ro wCount]);
event_list_panel.Controls. Add(d_even t_type[row Count]);
event_list_panel.Controls. Add(d_even t_location [rowCount] );
event_list_panel.Controls. Add(d_even t_remove[r owCount]);
is only adding the first item in the list of four.
Why?
What am I missing?
event_list_panel.Controls.
event_list_panel.Controls.
event_list_panel.Controls.
event_list_panel.Controls.
is only adding the first item in the list of four.
Why?
What am I missing?
private void mainForm_Load(object sender, EventArgs e)
{
int _x = 100;
int _y = 100;
int rowCount = 0;
int screenWidth = (this.ClientSize.Width - (_x*2));
ADODB.Recordset rs = new ADODB.Recordset();
Connection = new ADODB.Connection();
Connection.Open("NKTConnections", null, null, 0);
string sql = "SELECT d.event_id, d.event_title, d.event_type, d.event_location FROM events_calendar_data d, events_calendar_datetime t where d.event_id = t.event_id ORDER BY t.event_date DESC, d.event_title;";
rs.CursorLocation = CursorLocationEnum.adUseClient;
rs.Open(sql, Connection, CursorTypeEnum.adOpenForwardOnly, LockTypeEnum.adLockReadOnly, 0);
int _recordCount = rs.RecordCount;
Label[] d_event_title = new Label[_recordCount];
Label[] d_event_type = new Label[_recordCount];
Label[] d_event_location = new Label[_recordCount];
Label[] d_event_remove = new Label[_recordCount];
Button[] d_event_edit = new Button[_recordCount];
CheckBox[] d_event_cb_remove = new CheckBox[_recordCount];
while (!rs.EOF)
{
string event_id = rs.Fields["event_id"].Value.ToString();
string event_title = rs.Fields["event_title"].Value.ToString();
string event_type = rs.Fields["event_type"].Value.ToString();
string event_location = rs.Fields["event_location"].Value.ToString();
d_event_title[rowCount] = new Label();
d_event_type[rowCount] = new Label();
d_event_location[rowCount] = new Label();
d_event_remove[rowCount] = new Label();
d_event_edit[rowCount] = new Button();
d_event_cb_remove[rowCount] = new CheckBox();
d_event_title[rowCount].Font = new Font("Arial", 10, FontStyle.Bold);
d_event_title[rowCount].Text = event_title;
d_event_title[rowCount].Location = new System.Drawing.Point(_x, _y);
d_event_title[rowCount].Width = screenWidth;
d_event_type[rowCount].Font = new Font("Arial", 8, FontStyle.Bold);
d_event_type[rowCount].Text = event_type;
d_event_type[rowCount].Location = new System.Drawing.Point(_x, _y+10);
d_event_type[rowCount].Width = screenWidth;
d_event_location[rowCount].Font = new Font("Arial", 8, FontStyle.Bold);
d_event_location[rowCount].Text = event_location;
d_event_location[rowCount].Location = new System.Drawing.Point(_x, _y+20);
d_event_location[rowCount].Width = screenWidth;
d_event_remove[rowCount].Font = new Font("Arial", 6, FontStyle.Regular);
d_event_remove[rowCount].Text = "Check to Remove";
d_event_remove[rowCount].Location = new System.Drawing.Point(_x, _y+30);
d_event_remove[rowCount].Width = screenWidth;
event_list_panel.Controls.Add(d_event_title[rowCount]);
event_list_panel.Controls.Add(d_event_type[rowCount]);
event_list_panel.Controls.Add(d_event_location[rowCount]);
event_list_panel.Controls.Add(d_event_remove[rowCount]);
_y += 100;
rowCount++;
rs.MoveNext();
}
rs.Close();
}
How do you know?, maybe them are present but with null string?
ASKER
because I did a lot of testing to be sure.
if I do this
//event_list_panel.Control s.Add(d_ev ent_title[ rowCount]) ;
event_list_panel.Controls. Add(d_even t_type[row Count]);
event_list_panel.Controls. Add(d_even t_location [rowCount] );
event_list_panel.Controls. Add(d_even t_remove[r owCount]);
then the next one shows but not the following two don't show,
if I do this.
//event_list_panel.Control s.Add(d_ev ent_title[ rowCount]) ;
//event_list_panel.Control s.Add(d_ev ent_type[r owCount]);
event_list_panel.Controls. Add(d_even t_location [rowCount] );
event_list_panel.Controls. Add(d_even t_remove[r owCount]);
then the first availble one shows but not the last, and if I comment out the first three then the last one shows, I've even reordered them to see what happens, and always the first one in the list is added but not the others.
if I do this
//event_list_panel.Control
event_list_panel.Controls.
event_list_panel.Controls.
event_list_panel.Controls.
then the next one shows but not the following two don't show,
if I do this.
//event_list_panel.Control
//event_list_panel.Control
event_list_panel.Controls.
event_list_panel.Controls.
then the first availble one shows but not the last, and if I comment out the first three then the last one shows, I've even reordered them to see what happens, and always the first one in the list is added but not the others.
have you tried with AddRange?
ASKER
I've looked into it, but I don't know enough about it, I was having trouble finding good examples with what I needed.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.